November 23, 2014
Hot Topics:

Top 10 Reasons to Still be Using Java

  • June 13, 2014
  • By Manoj Debnath
  • Send Email »
  • More Articles »

According Dr. Noam Chomsky, every language that exists today is a modification of something before it. Java evolved from C++, which evolved from C, which evolved from BCPL and B. 

The brainchild of James Gosling, Java (1995) survived the vicissitudes of time and technology and still reigns supreme in the realm of programming languages. When it was first weaned, Java garnered the attention of the business community. Many programming languages have since been inspired by it and have crept slowly into the market, but the domain of Java still remains intact and expanding. There can be hundreds of reasons for such phenomenal interest among the programmer community. Here are just ten of them, not in any particular order.

1 – The Two Edged Sword is Sheathed

Java allayed a key problem of C/C++, pointers. Though a pointer is a very powerful mechanism, it has a very bad reputation of injecting bugs in the code unless one is very careful while coding. In this age of rush, there is an obvious trend to produce code that is highly productive while lessening the headache of maintenance. Java seems to deliver the need of this age.

2 - An Efficient Janitor

Java has its own garbage collector. This means programmers need not worry about any dangling reference of objects while coding. Neither does one has the headache of specifically deallocating memory once any object reference goes out of scope. One might argue that using a garbage collector to free memory, takes the control away from the programmer, and can leave you wondering when the garbage collector will intervene to free up the unused space. Experience shows that chaos rarely breaks when unused memory is occupied, and there is little free space to left for new allocation. The garbage collector intervenes at appropriate times, unless however, some bad coding is done such as the following:

for(int i=0;i<n;i++)
            Integer num=new Integer(i);

3 - Wish Tree, Just Ask What You Need

What type of application do you need? Java likely has a framework for that! Do you need a simple desktop application? If so, then you can use Java Swing or JavaFX. Do you need an online web or enterprise application? You can use Servlet and/or JSP EJB. Do you need a database  application? You can use JDBC, Hibernate and so on. The list of application types is nearly unending. In a word, Java is affluent, rich in providing almost every need of the programmer.

4 - Thriving Community

There is immense Java-centric community to help the programmer in need in most mission critical situations. Blogs, articles, code snippets, name it. Remember the help wizard that pops up in Windows, eager to provide hints and suggestions? The Java community has built many such wizards. Inherently, programmers are those breed of trouble seekers, always looking for ideas, and problems that excites their gray cells and eager to help, offer suggestions to one another through numerous blogs, forums, etc.

5 - Help at Large

Java is rich in API documentation, concept articles, tutorials, sample codes. Apart from that, there are several books available covering almost every nook and corner of Java. Many of them are freely downloadable. Though not an ideal way of learning, I suppose if every documentation, tutorial, article is followed one do not even need a hard copy of materials to learn Java.

6 - Open Source and Open to New Ideas

Java is open source and free. That leaves its door open to variety of changes and modifications. Expert communities regularly make changes such as building new frameworks to ease trouble for programmers. Frameworks like Hibernate, and Spring are Java’s burning example.

7 - Write Once, Run Anywhere

Perhaps the most obvious yet exciting quality of Java is its platform independence – write once and run anywhere. The Java compiler does not create an executable file, but rather it produces a half compiled code, called bytecode. This half compiled code is given to the JVM (Java Virtual Machine) installed in a specific platform (aka operating system). JVM is a layer above the operating system that understands bytecode and processes that code further in order to run the application. Something like half chewed cud ruminated further by the JVM to bring forth the essence of actual Java code.

8 - Tools and IDE

There are numerous tools, IDE available for efficient coding in Java – Eclipse, Netbeans, Jdeveloper, etc. There seems to be a race among them to outsmart the other with respect to the availability of features and ease of use. Programmers reap the best benefit out of it. Many of us get excited each time a new feature is added to our favorite IDE. There are also several thriving third party communities that provide excellent tools, adapters, and add-ons to enhance the performance of the developer.

9 - Miles to Go

Java communities never stopped enhancement and modification. From the time of James Gosling till now Java has evolved tremendously; the revamp of JavaFX, introduction of Lamda, introduction of Dependency Injection, etc., and many more yet to come. The Java community is not only open to suggestion but also open to participation and contribution as well. This has a tremendous impact in the mind of programmers, designers, and architects who can easily associate with Java and feel a kind of oneness with the technology.

10 - Three Pillars

Java succeeded to a large extent in creating balance between portability, speed and security. These three are the most essential pillars to support modern programming languages. Many of its predecessors failed in this aspect. For example C/C++ programs are very efficient with respect to speed, and portability but have poor security. Many of its loopholes can be easily exploited, tweaked to inject insecure code. Java runs through several layers and does not have a direct access to the underlying operating system. This however compromises speed but ensures reliability. So a happy balance among the three is often more desirable than one exceptional feature.

Apart from many other features, the above ten are crucial in shaping the future of Java in years to come, I believe. Once you code in Java for a few years, I have one thing to say – you'll simply love it.

Do you have other reasons why Java is still the programming to be using? Let us know or share them in the comments on this article!

Tags: Java, open source, Top 10

Comment and Contribute


(Maximum characters: 1200). You have characters left.



Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Sitemap | Contact Us

Rocket Fuel