Tuesday, 20 August 2013

What is Java?

Introduction: This Blog targets mainly ICSE and ISC students as I know the problems they suffer while learning this Programming Language without having knowledge of Basic C Language.
Here I will tell the tips to learn Java right from scratch and how to develop the required mentality to write programs in Java.

This is my first Post, and the following posts will cover about the programming language Java along with solutions in java language to real life problem statements. This (first) post is an introduction to Java and the subsequently the following posts will cover Java in detail. Also we’ll understand how to write programs and develop the right mentality that will help us to write any program in Java, this will help you to stop rote learning the Programs and you will start to understand them


When we enter into 9th std. we're introduced to a new topic that is Programming in Java.
As our classes start we begin to understand that Java has some connection with computers and it’s some language to communicate with the computer. So the first question that pops in the mind is why we require to learn some language to communicate with the computer…

The answer to question above is that computer works using binary codes i.e. Machine Level Language i.e. computer understands only two logic states logic 1 and logic 0. I know that these things were taught in lower classes but I’m mentioning them because they were taught to you to make you understand how using only two states, 0 and 1, a computer is able to do all the tasks, which include streaming of videos across you tube, making games such as Counter Strike run on our pc. You will be surprised to know that all the data present in your computer is present in the form of 1’s and 0’s.

So we now know that computer uses binary codes for working and we can’t directly specify them instructions in binary language, and a computer is useless if it can’t perform the tasks we assign it. So efforts started to make the computer understand our language. A “Translator’s” development began which would convert our language into machine recognisable language. The outcomes of the efforts were that Algol language came following it FORTRAN, COBOL were developed. The main purpose of those languages was to make the computer understand the instructions we’re giving it. But the language in which we we’re to communicate with the computer using those “Translator’s” were not that easy, they were using English alphabets and words but in some modified form like mov a b to move some data from location b to a, the language was tough to write and understand and had some short comings, this language was known as Assembly Language. The developments in these fields continued and High Level Language i.e. C language was introduced by Dennis Ritchie which was really easy to use and write. Based on this C language C++ and Java were developed.

So now we know for what purpose Java was developed. Java is an OOP that is it uses Object Oriented Programming. Also a major plus point for Java is that it is platform independent that is  it can run on different systems without any problem, to understand this point we must know what a “Translator” does and what is OOP.

OOP-Object Oriented Programming means using real life entities in programming, for example Student can be identified by his roll number, name. These real life entities like roll number and name can be said to represent object in Object Oriented Programming Language. These objects are the things with which we generally have to work other detailed concepts will be covered in next posts.

The “Translator” is known as Compiler in technical terms. It converts the instructions given to it in binary form i.e. to Machine Level Language. It saves us the work of writing the instructions in binary form. In Java the compiler converts the entire code written in High Level Language to Machine Level Language and it executes this code on the Java Virtual Machine which enables it to achieve its goal of being machine independent.

So in this post we’ve learnt that

1. Computer uses binary language for all its working.

2. Java was developed to convert High Level Language into Machine Level Language i.e. to act as a “Translator”.

3. Java uses Object Oriented Programming approach to solve most of the problems.

4. Java is Platform independent that is it can run on all machines irrespective of its internal built, i.e. whether it’s an Intel processor or an AMD processor.

5. Java and C++ can be said to have been derived from C language.

6. Objects represent real life entities.

Note- Knowing C language before starting to learn Java would be better, as C is the basic language and Java has some connections with C language. I am not telling you to master C language but just go through some C Language book and try to understand or look at theoretical concepts in C like structures, pointers I will cover those topics as well in the coming post but having some exposure to the concepts will surely help you understand it better.  Having little Knowledge in C helps grasp Java better.

For Reference use the book Let us C by Yashwant Kanetkar will help you grasp some important concepts of C Language.

Please feel free to post any suggestions to improve the post.

Also if you're having any questions, post them in the comments I'll reply to them as soon as possible.

And if you're requiring solutions to some tough Java Programs please mail me the questions. I'll send the solutions as soon as possible.

About Myself- I am studying IT in MIT College Of Engineering, Pune. I've completed my 12th from ISC board and I love to write programs in Java Language.
 

No comments:

Post a Comment

Know Jugaad. Powered by Blogger.