StackTips
 9 minutes

History of Java Programming Language

By Nilanchala @nilan, On Sep 17, 2023 Java 2.33K Views

Java Programming Language was developed with the combined effort from 5 great geeks, James Gosling, Patrick Naughton, Chris Warth, Mike Sheridan and Ed Frank, while they all were working for Sun Microsystems, Inc. The first public release version of java came in 1991. It took around 18 months combined effort to develop and had a initial name as “Oak” which was renamed to Java in 1995, due to copyright issues.

The core idea behind java was to develop a language that is platform-independent and can be used in various devices such as embedded software’s for consumer electronic devices. C and C++ were quite inefficient for the purpose because they were platform dependent, as their programs have to be compiled for particular hardware before execution. Also, the compiled code was inefficient for other processors and it had to be recompiled. The team of 5 also called as Green Team began to work in developing a easier and efficient, portable and platform-independent language that could create a code which can run on variety of processors under differing environments. That’s how JAVA began!

During late 90s, the Internet and WWW infrastructure become popular day-by-day, and most of the web application was using CGI for programming for web application development. Due to various lags and drawbacks such as platform independency, multi threading and concurrency, CGI was not efficient enough for web applications. It required programs that could run on any operating system irrespective of hardware and software configuration. It required small and portable programs that could be securely transported over the network. The programming language available to suit such requirements was Java.

Many developers soon realized that architectural neutral language like Java would be best for writing programs for Internet. Thus focus shifted towards Java from consumer electronics to World Wide Web.

Today, Java is not an ordinary programming language. It is a technology which is simple, Object Oriented, Distributed, Robust, Secure, Architecture neutral, Portable, Interpreated, Multithreaded, High Performance and Dynamic.

The following table depicts the java version release informations. P.s. this information is taken from Wikipedia.

VersionYear of releaseDescription
JDK1.023-Jan-1996The codename is Oak. Initial release of Jdk1.0
JDK1.119-Feb-1997The addition of AWT, JDBC, RMI, Javabeans etc
J2SE 1.28-Dec-1998J2SE (Java2 Standard Edition), Codename Playground, Major additions are- Swing graphical API was integrated, strictfp Keyword, reflection, Java IDL, collection and JIT Compiler in Sun’s JVM for Java plug-in was equipped.
J2SE 1.38-May-2000Codename Kestrel. The major changes are- Hotspot JVM included, RMI modified to support compatibility with CORBA, Java Naming and Directory Interface(JNDI) included and Java Platform Debugger Architecture(JPDA),Java Sound etc.
J2SE 1.46-Feb-2002Codename merlin. This was the first release of the java platform developed under java community process as JSR 59. The Major Changes are- assert Keyword, Regular Expression, Exception chaining, Image I/O API for reading and writing images, Java Web start included.
J2SE 5.030-Sept-2004codename Tiger , Originally Numbered 1.5, New language features added are- Generics, Metadata, Autoboxing, Enumeratations, Swing, Var args, collections static imports etc.
Java SE 611-Dec-2006Codename Mustang. New changes are- Scripting Language support, Improved web service support trough JAX-WS , JDBC 4.0 support, support for pluggable annotations, JVM improvements including Synchronization and compiler performance optimizations, Garbaze collection algorithms.
Java SE 7.0July 28, 2011Codename Dolphin, currently in development stage, The features changes are- JVM support for dynamic language, New library for parallel computing on multi core, compressed 64 bit pointers, Automatic resource management.
Java SE 8.0March 18, 2014Various bug fixes and improvements
nilan avtar

Nilanchala

I'm a blogger, educator and a full stack developer. Mainly focused on Java, Spring and Micro-service architecture. I love to learn, code, make and break things.