Wednesday, July 20, 2016

JAVA - Overview



Welcome to the first post of JAVA tutorial series. In this first post I will discuss about the overview of JAVA. This JAVA tutorial series is prepared for the beginners in order to help them understand the basic concepts of JAVA, towards the advanced concepts of JAVA. In the due course of the series, it will also be taught how to consider JAVA programming as a sport and take it to the other level into competitive programming. The target audience are expected to have prior knowledge about basics of computer programs and computer programming languages. Please pardon me if I go wrong at any step and do correct me, because I am still a student. Okay, now it is time to start with the introductory tutorial. "Welcome to the world of JAVA !"

Motivation to learn JAVA or any programming language

The first question which might rise is why to learn a programming language ? and how to learn ?

The answer to this is very simple. Learning a programming language is same as learning how to speak or write a regional language. The advantageous part in the process of learning a programming language is that, if you know how to speak and write in global language (English), then you can master any programming language. In any language, the set of alphabets arranged in particular order form a word, set of words in proper order form a sentence with certain meaning. The grammar specifies the rules of writing in a language. Similarly a programming language also has set of rules to be followed and they are called syntax and semantics. So learning a programming language is not at all difficult if you follow these basic rules. If you really have interest in learning a programming language, then you will definitely learn it. Have the faith and trust in yourself and also on the programming language which you are going to learn. I guarantee you that you will find JAVA an interesting subject and you will enjoy learning JAVA. All the best dear friends.
    
History of JAVA

Let us keep this section of the tutorial as simple as possible, because a little knowledge about the programming language background will help us to understand the language easily. Here are a few important points to be remembered about the history of JAVA,

1. JAVA was originally developed by Sun Micro-systems.
2. It was initiated by James Gosling who initiated Java language project in June 1991 for use in one of his many set-top box projects. The language, initially called ‘Oak’ after an oak tree that stood outside Gosling's office, also went by the name ‘Green’ and ended up later being renamed as Java, from a list of random words.
James Gosling

Oak Tree
3. Billions of devices run JAVA (Including ATM machines, smart phones etc.,)

These points are enough to remember about JAVA's history :P

The latest version of JAVA is JAVA Standard Edition (JSE) 8. For the support of JAVA on various platforms multiple configurations of JAVA are available such as J2EE (JAVA 2 Enterprise Edition), J2ME (Java 2 Micro Edition) for mobile applications. JAVA is called WORA (Write Once Run Anywhere). In Indian national language (Hindi) there is a joke about the versions of JAVA, have a look at that Meme :D 

LOL Moment
OOP (Object Oriented Programming) Concepts

JAVA is object oriented programming language. Now you might think what is this new thing called object oriented programming -_-

Object oriented programming language is the one which can be easily mapped to real world concepts. So, using JAVA we can code anything which actually exists in real world. The major OOPS concepts are as follows,

1. Object
2. Class 
Class and Objects

3. Data Abstraction
Data Abstraction and Encapsulation

4. Polymorphism
Polymorphism

5. Inheritance
Inheritance

6. Encapsulation
Encapsulation


Real life scenarios with major OOPs concepts,
Real Life Scenarios
Don't worry, if you don't know about these concepts. It will be covered in further tutorials.

Note: JAVA is not pure object oriented programming language, since it include some primitive data types.

Now don't start worrying about what data type is ! It will be taught in further tutorials while we code together.

Features of JAVA

Let us look at some features of JAVA,
1. Simple: JAVA is simple to learn as well as to code. The basic understanding of the syntax and semantics is enough to code anything in JAVA.
2. Object oriented: In JAVA, everything is an object. Since JAVA is based on object model, it can be extended easily.
3. Platform Independent: The JAVA application can run on any operating system. But,  it is JVM (JAVA Virtual Machine) dependent. So, if JVM is installed in the operating system, then JAVA applications can run. When JAVA code is compiled, it is not converted into platform specific machine code, instead it will be converted into platform independent byte code.
4. Secure: Coming to the security concern, here are two concepts to be followed,
         a. The security feature of JAVA enables us to create virus-free and tamper free systems.                  Authentication is based on public key encryption.
            b. JAVA is secure since it does not have any pointers. The memory leak is prevented here.
5. Robust: JAVA is said to be robust by its feature of eliminating the errors which might arise in some situations by checking the compile time and run time errors (Sometimes robustness is also witnessed due to the presence of Garbage Collector in JAVA).
6. Multi-threaded: With this feature of JAVA, it enables us to write programs which can perform multiple tasks simultaneously.
7. High Performance: The just in time (JIT) compilers enables high performance in JAVA.
8. Distributed: JAVA is designed for the distributed environment of the internet.
9. Architecture Neutral: JAVA compiler generates an architecture-neutral object file format, which makes the compiled code executable on many processors, with the presence of Java runtime system.
10. Interpreted: Java byte code is translated rapidly to native machine code and it is not stored anywhere.

These are some of the major features of JAVA. In the next tutorial we'll see how to setup the environment to start with coding in JAVA.

Note: There is no full form of JAVA. JAVA is named after an island in Indonesia. That island is famous for its coffee. That's the reason why Java has a logo of a "Coffee Mug".

Hope this article was informative and knowledgeable. Your comments, queries and suggestions are most welcome. See you soon in the next tutorial :)  
     

7 comments: