A brief history of the development of Java

Java is a general term by Sun Microsystems, Inc. (Sun Microsystems) in May 1995 launch of the Java programming language and the Java platform. Java is a language you can write object-oriented programming language, cross-platform application software, developed by Sun Microsystems was served James Gosling (James Gosling), who in the early 1990s, it was originally named Oak (Oak ). Java With the rapid development of the Internet and development, and gradually become an important network programming language.

The first version of Java from birth to the present (the book written by time) has been 24 years time. In these 23 years, the birth of numerous products, and Java-related technologies and standards, and now let us into the time tunnel, starting from the era gave birth to the Java language, look at Java's development trajectory and historical change.

April 1991, started by Dr. James Gosling led the Green Plan (Green Project), the purpose of this program is to develop a program architecture that can run on a variety of consumer electronics products (such as set-top boxes, refrigerators, radios, etc.) . The plan is the product of the predecessor --Oak Java language, Oak was not successful in the consumer market, but with the rise of Internet trends in 1995, Oak quickly find the most suited to their development and market positioning degenerated into the Java language .

March 1992, due to the Oak programming language has been used as another name that already exists, it is necessary to choose a new name --Java. Java is inspired by coffee, is said to James Gosling R & D team of engineers often drink coffee it is produced from coffee beans on the Indonesian island of Java (Java) planted.

In February 1993, Sun Microsystems, a subsidiary FirstPerson trying to get a series of orders for a television set top box interaction system from Time Warner. At that time, since the green plan is not successful, then Time Warner lost orders, so the development focus from consumer electronics to home on the relevant platform TV set-top box.

1995 May 23, 0ak language was renamed Java, Java and the officially released version 1.0 Sun World Congress. Java language for the first time put forward the "Write Once, Run Anywhere" slogan.

January 23, 1996, the JDK 1.0 release, Java language has been the first official version of the operating environment .JDK 1.0 provides a Java virtual machine interpreted to achieve (Sun Classic VM). JDK1.0 version of the technology, including representatives of the Java Virtual Machine, Applet and AWT and so on.

In April 1996, 10 major operating system vendors affirmed that embed Java technology in its products. In September, has about 83,000 Web pages utilize Java technology to produce. In 1996, at the end of 5 , Sun Company in San Francisco held the first JavaOne conference, JavaOne since then become the world's millions of Java language developers annual technology event each year.

February 19, 1997, Sun has released JDK 1.1, Java technology, some of the most basic support point 9 (such as JDBC, etc.) are released in JDK1.1 version of JDK version 1.1 technology represents the JAR file format, JDBC, JavaBeans and RMI. Java syntax also made some progress, such as inner classes (Inner class) and reflection (reflection) all appear at this time.

From 1.1.47, each JDK version has its own name (project code name), were JDK 1.1.4 - Sparkler (Gem) JDK1.1: 5- Pumpkin (squash) JDK1.1.6- Abigail (Abby Gail, women's name), JDK1.1.7- Brutus (Brutus, Roman statesman and general) and JDK1.1.8- Chelsea (Chelsea, city)

December 4, 1998, the JDK ushered in a landmark version of JDK1.2, code-named Project Playground (Arena) Sun Company in this version of Java technology system to split into three directions, respectively, for desktop applications development of J2SE (Java 2 Platform, StandardEdition) , for the development of enterprise-class J2EE (Java 2 Platform, enterprise Edition ) and for mobile phones and other mobile terminal development of J2ME (Java 2 Platform, Micro Edition ). In this version is very much representative of emerging technologies, such as EJB, Java Plug-in, Java IDL and Swing, etc., and this version of the Java virtual machine for the first time built a JIT (Just In Time) compiler (JDK 1.2 in has been the coexistence of three virtual machines, Classic VMs HotSpot VM and Exact VM, which Exact VM only in Solaris platforms too: behind these virtual machines are built JIT compiler, rather than brought before the Classic VM version only linked to form a JIT compiler). In the language and the API level, Java added a keyword strictfp now very popular among Java coding a series of Collections collections. In March 1999 and July, respectively JDK 1.2.1 and JDK1.2.2 two small releases.

1999 April 27, HotSpot VM release. HotSpot was initially developed by a company called "Longview Technologies" small companies, because of outstanding performance HotSpot, the company in 1997 the company was acquired by Sun. When the HotSpot virtual machine is released as JDK 1.2 provides additional program, and later it became the JDK1.3 and later Sun JDK for all versions of the default virtual machine.

May 8, 2000, the project code-named Kestrel (American Red) release of JDK 1.3, JDK 1.3 JDK 1.2 relative improvement mainly in some libraries (such as math and the new Timer API, etc.), JNDI service from JDK 1.3 began to be provided (formerly just a JNDI extension), using CORBA IIOP RMI to implement a communication protocol, etc. as a platform-level services. This version of the Java 2D also done a lot of improvements, provides a number of new Java 2D API, and added new JavaSound library. JDK 1.3 has a modified version of the JDK 1.3.1, the project code-named Ladybird (ladybug), 2001 May 17 release.

From MJDK1.3 beginning, Sun has maintained a habit: About every two years, released a major version of the JDK, animal name as a project code, each modified version released during insect name as the project code-named places.

2002 February 13, JDK1.4 release, the project code-named Merlin (gray back).

September 16, 2002, issued a project code-named Grasshopper (grasshopper) in JDK 1.4.1.

JDK1.4 version of Java is a true maturing, Compaq, Fujitsu, SAS, Symbian and IBM, and other well-known companies are involved even achieve its own independent JDK 1.4. Even today, ten years later, there are still many mainstream applications (Spring, Hibernate and Struts, etc.) can be directly run on JDK 1.4, released or continue to run on JDK 1.4 version.

June 26, 2003, issued a project code-named Mantis (Mantis) of JDK1.4.2.

2004 September 30, JDK1.5 release, code-named Project Tiger (Tiger). Since JDK 1.2 release, Java transformation on the grammatical level has been very small, and JDK1.5 made a very big improvement in the ease of Java syntax. For example, automatic packing, generic dynamic annotation, enumeration, and variable length parameter traversal cycle (the foreach loop) and other grammatical features are added in the JDK 1.5. On the virtual machine and API level, this improved version of Java memory model (Java Memory Model, JMM), provides contract java.util.concurrent and so on. In addition, JDK 1.5 is the last official statement supports JDK version of Windows 9x platform.

2006 December 11, JDK1.6 release, code-named Project Mustang (Mustang). In this version, Sun has from the beginning of the end of the JDK 1.2 has been 8-year-old J2EE, J2SE and J2ME naming, enable Java SE 6, Java EE 6 and Java ME naming 6. JDK 1.6 improvements include support for dynamic languages (by an internal Mozilla Java Rhino engine), the compiler API and provide mini HTTP Server API and so on. At the same time, improvements have been made to this version of the Java virtual machine inside, including locks and synchronization, the garbage collection and class loading algorithms are quite a few changes.

In 2006, November 13 at JavaOne on, Sun announced that Java will eventually open source, and then within a year of much time, will gradually open parts of the JDK under GPL v2 (GNU General Public License v2 ) protocol the source and the establishment of these organizations OpenJDK source independently. In addition to a very small amount of property codes (Encumbered Code, this code is mostly the Sun itself has no permission to open processing), OpenJDK includes almost outside all the code Sun JDK, the quality manager for OpenJDK has said in JDK 1.7 in , Sun JDK, and OpenJDK addition to copyright commented code file header, the code is basically exactly the same, so OpenJDK7 with the Sun JDK 1.7 is essentially the same set of code libraries developed products.

JDK1.6 later released, due to the increased complexity of the code, the open source JDK reason, the development of JavaFX, Sun's economic crisis and acquisitions, etc., SUN companies on matters other than the JDK development takes a lot of resources, JDK update no longer be maintained for two years released a major version pace of development. JDK1.6 so far released a total of 37 Update version, the latest version of the Java SE 6 Update 37, 2012 October 16 release, 19 February 2009, the project code-named Dophin (dolphin) of JDK 1.7 It completed its first milestone version. According to the planning function of JDK 1.7, we set a total 10 milestones. Finally, a milestone version of the original plan in September 9, 2010 ended, but for various reasons JDK1.7 final can not be completed as planned.

The beginning of the planning function MJDK1.7 point of view, it should be a JDK version contains many important improvements, which the Project Lambda (Lambda expressions, functional programming), Jigsaw project (virtual machine modular support), dynamic languages support, GarbageFirst Coin collectors and projects (details of the evolution of language) and other sub-projects have a profound impact on the industry will be Java. During JDK1.7 development, Sun has been in technology due to the competition and commercial competition are stuck in the mud, only 3% of the peak of the company's stock market value fell, has been unable to promote research and development JDK1.7 be on a regular schedule. 1.7 In order to end long-term "bounce" problem JDK as soon as possible, Oracle acquisition of Sun's company shortly after it announced that it would implement "B Plan"

Sharply cut the intended target JDK 1.7, JDK in order to ensure that the official version 1.7 can be released on time on July 28, 2011. "B plan" to some improvement can not be completed on time Lambda project, Jigsaw project and delays to the project Coin in JDK 1.8. Finally, JDK major improvements 1.7 including new G1 collector (G1 still in Experimental state at the time of publication, until 2012 April Update 4 the only official "positive"), to strengthen the call to support for languages ​​other than Java (JSR -292, this feature is still not fully implemented so far finalized) to grade class loading architecture.

So far, JDK 1.7 Update has released version 9, the latest Java SE 7 Update 9 Posted on October 16, 2012.

From the Java SE 7 Update 4 onwards, Oracle began to support Mac OSX operating system, and to the extent full support in Update6, while in Update 6 ARM instruction set architecture also provides support. So far, JDK official can run on Windows (excluding Windows9x) on s Linux, Solaris and Mac OS platforms, support ARM, x86, x64 and Sparc instruction set architecture type.

Before this, Oracle has acquired another a large enterprise BEA middleware company, after the company completed the acquisition of Sun, Oracle has made companies were currently two of the three major commercial -JRockit virtual machines from Sun Microsystems and BEA Systems in and HotSpot, Oracle announced that in the next 1-2 years, will these two outstanding virtual machines complement each other, eventually combined. It can be expected in the near future, Java virtual machine technology will produce enormous changes.

July 28, 2011, the Oracle has released Java SE 1.7.

March 18, 2014, the Oracle has released Java SE 1.8.

September 22, 2017, the Java SE 1.9 officially released. Java 9 provides a new modular system, its core change is the introduction of a new Java programming component, which is modular. Java 9 provides a lightweight JSON API; use the G1 as the default garbage collector, replacing the previous default of Paralel GC; jshel introduced this interactive tool, jshel brought to Java eleven read evaluates eleven circulation print eleven function. It aims in the form of immediate results and feedback, to simplify the implementation of the prototype and help us explore language in the coding options; for os process have better control and management; full support Http 2.0, a so-called incubator module delivery, and is equipped with a new Java Http client to replace HttpURLConnection, while also achieving Http 2.0 and websockets.

April 20, 2009, Orcle company announced $ 7.4 billion acquisition of Sun Microsystems, Java trademark of Oracle Corporation All from the official (Java language itself does not belong to which company, which is managed by the JCP, although the main JCP by Sun Microsystems or Oracle Corp. led).

Published 69 original articles · won praise 84 · views 10000 +

Guess you like

Origin blog.csdn.net/weixin_44893902/article/details/105008479