Evolution of Java & Version History
Since,
Java is known for the language of Internet. But originally it was not
developed for Internet. Its primary purpose was to develop a language
that would the platform-independent (i.e. architecture neutral). Java
was invented to create software that could be embedded in consumer
electronic devices, such as microwave ovens and remote controls.
Java
was developed in 18 months by James Gosling, Patrick Naughton and et
all at Sun Microsystem in 1991. It was initially called "Oak".
But, come in market in 1995 by the name "Java".
So,
what was the need of platform independent language?
Contrary
to Java, most of languages require specific architecture to run.
However it is possible that any language can compile on any
architecture, but it requires a compiler that is targeted for that
CPU or architecture.
Was
the java team only considered about portable programs?
It
is not true that only java team considered about a portable program.
At early stage of programming, most of the programmers learn that
portable programs are desirable. The computer world at that time was
divided into three competing camps Intel, Macintosh & UNIX.
Programmers are bounded in their boundaries hence; urgent need of
portable program was reduced.
But
after invent of World Wide Web and presence of diverse computers,
operating systems & CPU, need of portable program one again
returned with a vengeance. And low-priority problem had become the
high-profile necessity.
About
Java
Many
people think that, Java is enhanced version of C++ because of
similarity between them. But expert think that it would be a large
mistake. Java is differing practically & philosophically from
C++. While it is true that it was influenced by C++.
Java
is a high-level programming language as well as a platform.
The
Java programming language is designed to meet the challenges of
application development in the context of heterogeneous, network-wide
distributed environments. Paramount among these challenges is secure
delivery of applications that consume the minimum of system
resources, can run on any hardware and software platform, and can be
extended dynamically.
The
Java programming language originated as part of a research project to
develop advanced software for a wide variety of network devices and
embedded systems. The goal was to develop a small, reliable,
portable, distributed, real-time operating platform. When the project
started, C++ was the language of choice. But over time the
difficulties encountered with C++ grew to the point where the
problems could best be addressed by creating an entirely new language
platform. Design and architecture decisions drew from a variety of
languages such as Eiffel, SmallTalk, Objective C, and Cedar/Mesa. The
result is a language platform that has proven ideal for developing
secure, distributed, network-based end-user applications in
environments ranging from network-embedded devices to the World-Wide
Web and the desktop.
[James
Gosling, 1996]
Java Versions
1995 – JDK alpha &
beta was highly unstable.
23 Jan 1996 – JDK 1.0
Originally called Oak.
19 Feb 1997 – JDK 1.1 JIT
compiler released for Microsoft Windows Platform.
8 Dec 1998 – J2SE
1.2 Codename Playground, from here to JDK 1.5 it was re-branded as
Java 2 followed by version like J2SE 1.2.
8 May 2000 – J2SE 1.3
Codename Kestrel with HotSpot.
6 Feb 2002- J2SE 1.4 Codename
Merlin.
30 Sep 2004- J2SE 5.0 Codename Tiger, Originally numbered 1.5.
The number
was changed to "better reflect the level of maturity, stability,
scalability and security of the J2SE."
11
Dec 2006 – JSE 6 Codename
Mustang, Sun replaced the name J2SE to JSE and
Sun was take over by Oracle but
internal numbering for developers will remain as 1.6.0.
28
Jul 2011 – JSE 7 Codename
Dolphin. Java 7 was the default version to download on java.com from
April 2012 until Java 8 was released.
18
Mar 2014 – JSE 8 Language-level
support for lambda expression under Project Lambda and default
methods (virtual extension methods) which make
multiple inheritance possible
in Java. And implementation of multiple inheritance more precisely.
It also allows embed JavaScript code within applications. Java 8 has
been the default version to download from the official website.
22
Sep 2016 – JSE
9 might
be released.
References:-
1.https://docs.oracle.com/javase/tutorial/getStarted/intro/definition.html.
2.Java 2 The Complete Reference by Herbert Schildt.
3.The Java Language Environment , a white paper written by James Gosling and Henry McGilton.
4.https://en.wikipedia.org/wiki/Java_version_history#cite_note-JDK7-96