Java: Difference between revisions

From   
Content added Content deleted
No edit summary
Line 3: Line 3:
=== Internet ===
=== Internet ===
{{Cquote|While today's Web is mostly a static brew - a grand collection of electronically linked brochures - Java holds the promise of caffeinating the Web, supercharging it with interactive games and animation and thousands of application programs nobody's even thought of.||| David Bank (December, 1995) "[https://web.archive.org/web/20050420023839/http://www.wired.com/wired/archive/3.12/java.saga.html The Java Saga]" Wired Magazine}}
{{Cquote|While today's Web is mostly a static brew - a grand collection of electronically linked brochures - Java holds the promise of caffeinating the Web, supercharging it with interactive games and animation and thousands of application programs nobody's even thought of.||| David Bank (December, 1995) "[https://web.archive.org/web/20050420023839/http://www.wired.com/wired/archive/3.12/java.saga.html The Java Saga]" Wired Magazine}}

{{Cquote|Hype ensued. With that hype came JavaScript, a language whipped up by Netscape engineer Brendan Eich in 10 days in 1995 to be featured in the forthcoming Navigator 2.0. The JavaScript name usually taken to be a quick cash-in on the Java buzz of the time. JavaScript promised much of the same web functionality as Java.

JavaScript didn't immediately sink the Java Applet, despite web browsers eventually being able to do cool stuff without having to farm it out to the JVM. This is because for many years the JVM still offered performance advantages. It makes sense, since the Applet has access to the full resources of a simulated computer.

Whereas JavaScript had conventionally been run within the confined of a browser, the release of Google's V8 JavaScript engine in 2011 meant that JS code would now be compiled by Chrome and then run on the user's actual machine. V8 compiles JavaScript source code directly into machine code when it is first executed. There are no intermediate byte codes, no interpreter. It one ups the Java Applet. No more JVM, just the whirr of optimized machine code running on hardware.

Applets have not aged well. The technology proved to be very difficult to evolve, and so applets have not been considered to be a modern development platform for many years. However, they doggedly persist due to some large early adopters being very resistant to change. The resulting effect to the ecosystem is that Java applets are still presents in the platform, and are a major contributor to security problems.

The impetus for Java dumping the Applet is chiefly that modern browsers had already dumped it or were in process of dumping it along with other plug-in based technology, such as Flash and Silverlight.

Finally, Java's corporate parent Oracle announced in 2016 that it's finally killing the Applet.|||Michael Byrne (February 2, 2016) [https://www.vice.com/en/article/8q8n3k/a-brief-history-of-the-java-applet The Rise and Fall of the Java Applet: Creative Coding’s Awkward Little Square] Vice }}


=== Write once, run everywhere ===
=== Write once, run everywhere ===

Revision as of 13:40, 29 May 2023

Java is fun to use and practical. It removes tedious and error-prone parts of application development such as memory management and cross-platform porting.
— Jonni Kanerva (1997) "The Java FAQ" Massachusetts : Addison-Wesley

Internet

While today's Web is mostly a static brew - a grand collection of electronically linked brochures - Java holds the promise of caffeinating the Web, supercharging it with interactive games and animation and thousands of application programs nobody's even thought of.
— David Bank (December, 1995) "The Java Saga" Wired Magazine
Hype ensued. With that hype came JavaScript, a language whipped up by Netscape engineer Brendan Eich in 10 days in 1995 to be featured in the forthcoming Navigator 2.0. The JavaScript name usually taken to be a quick cash-in on the Java buzz of the time. JavaScript promised much of the same web functionality as Java.

JavaScript didn't immediately sink the Java Applet, despite web browsers eventually being able to do cool stuff without having to farm it out to the JVM. This is because for many years the JVM still offered performance advantages. It makes sense, since the Applet has access to the full resources of a simulated computer.

Whereas JavaScript had conventionally been run within the confined of a browser, the release of Google's V8 JavaScript engine in 2011 meant that JS code would now be compiled by Chrome and then run on the user's actual machine. V8 compiles JavaScript source code directly into machine code when it is first executed. There are no intermediate byte codes, no interpreter. It one ups the Java Applet. No more JVM, just the whirr of optimized machine code running on hardware.

Applets have not aged well. The technology proved to be very difficult to evolve, and so applets have not been considered to be a modern development platform for many years. However, they doggedly persist due to some large early adopters being very resistant to change. The resulting effect to the ecosystem is that Java applets are still presents in the platform, and are a major contributor to security problems.

The impetus for Java dumping the Applet is chiefly that modern browsers had already dumped it or were in process of dumping it along with other plug-in based technology, such as Flash and Silverlight.

Finally, Java's corporate parent Oracle announced in 2016 that it's finally killing the Applet.
—Michael Byrne (February 2, 2016) The Rise and Fall of the Java Applet: Creative Coding’s Awkward Little Square Vice

Write once, run everywhere

The success of Java itself would be in slow, deliberate entrenchment in the oatmeal world of enterprise software, the long-lasting collections of programs that together serve the needs of whole organizations. The Java language promised "write once, run anywhere" functionality, that is, code written for the JVM would run the same regardless of the underlying machine or operating system.

Software companies spend a fortune building separate code for Windows NT, Windows 3.1, Linux, MacOS, Solaris, AIX, etc. This is a major headache for every IT shop. Java has achieved the greatest success in letting developers write Java code once for all platforms.
— Michael Byrne (February 2, 2016) The Rise and Fall of the Java Applet: Creative Coding’s Awkward Little Square Vice