Written before
From the release of the first version in 1995 to the present, the Java language has gone through ups and downs for 22 years, and the latest Java version has also been iterated to Java 9. The cross-platform advantage of the Java language back then seems to be just a piece of cake now. Languages ??such as Go and Rust have emerged, further broadening the boundaries of programming languages. Sun, the company that invented the Java language, has long been acquired by Oracle. Oracle is now in the midst of a hot cloud computing wave. Even James Gosling, the father of Java, has joined AWS, the largest cloud computing company in the world today.
The 20 years of Java language development are also the 20 years of rapid development of the global Internet. The Java language has also witnessed the wave of e-commerce, mobile Internet, big data, and cloud computing, so today Java can be seen in all major Internet companies.
Looking at the development of the Java language, one can't help but think of a poem by Xin Qiji:
Throughout the ages, there is no hero to be found, but Sun Zhong is looking for a place. On the dance pavilion and singing stage, the wind is always blown away by the rain. The setting sun, the grass and trees, the ordinary alleys, where the slaves of humanity once lived. I think back then, when we were strong and strong, we could swallow thousands of miles like a tiger. Yuan Jia hastily sealed the wolf in Xu, and won a hurried visit to the north. Forty-three years later, I still remember the beacon fire on Yangzhou Road. But looking back, under the Buddha's Temple, there is a sacred drum. Who can ask, Lian Po is old, can he still make a living?
TIOBE’s language rankings show that the Java language has shown a clear downward trend since the beginning of 2016. There are also some arguments in the developer community that denigrate the Java language. The editor also has some questions: Java is old Come on, can you still "eat"? Based on this background, InfoQ invited Zhang Jianfeng, a senior Java expert, to explain the development status and future of the Java language.
Review of the Development of Java Language
The Java language originated from the Ork project led by James Gosling of Sun Company in 1991. In 1995, Sun Company officially named it Java and proposed "Write once" , Run anywhere" slogan.
Java 1.0 was released in January 1996, providing a Java virtual machine for interpretation and execution. At that time, the Internet began to rise. Java Applets could run in the Mozilla browser, which was regarded as the future. Internet language.
When Java 1.1 was released in February 1997, the basic form of the Java language was basically determined, such as reflection, JavaBean, the relationship between interfaces and classes, etc., and they remain consistent today. However, some of Java's original goals, such as executing applets in the browser and the cross-platform graphical interface Awt, quickly encountered negative reviews.
In December 1998, the first milestone version of Java, Java 1.2, was released. This version uses JIT (Just in time) compiler technology to achieve an optimal balance between language portability and execution efficiency. At the same time, the Collections collection class is well designed and has been quickly and widely used in enterprise application development. Sun divides the Java technology system into three directions, namely J2SE (for desktop and general application development), J2EE (for enterprise-level application development), and J2ME (for mobile terminal development). This classification has a very long-lasting influence and reflects the thinking of mainstream language designers: dividing it into forms, API sets, etc. for different application fields.
In May 2000, Java 1.3 was released. In this version, Corba, as a language-level distributed object technology, became a technical prerequisite for J2EE. J2EE was greatly influenced by the design of Corba. The home, interface and implementation of early EJB were the implementation of Corba in C language and were transplanted to Java language. The Servlet specification in J2EE has achieved great success. With the rise of the Internet, Servlets that interact with browsers directly through the HTTP protocol and numerous MVC frameworks have become Internet celebrities in Web1.0.