How Do We Define Office?
Date:2018-08-08 22:22:55Viewed:809
Java is a massively overloaded word. For starters, it is the name of an Indonesian island as well as a term for coffee. Then, we have Java — the computing platform. Even in regards to a computing platform, the word has taken on several meanings: are we talking about Java, the programming language syntax, Java, the virtual machine, or Java, the Development Kit (JDK)? Along with these primary uses, there are many more ways we can use the term Java —card, embedded, Micro Edition and Enterprise Edition (at least now we have the disambiguation of this being Jakarta EE).
Where am I going with this? Well, as part of some of the work I was doing on a whitepaper for JDK migration, I was compiling an exact list of differences between the Oracle JDK and Zulu JDK, which is a straight build of the source provided by the OpenJDK project. Since I’m also on the Expert Group for the Java SE specification, this got me thinking about how we define what is and isn’t part of Java.
This led me to think about what we actually mean by Java. Around the same time JDK 9 was released last year, Oracle made a number of announcements about how JDK would be developed and delivered in the future. I’ve written about much of this before, but one part of this was the elimination of all functional differences between the Oracle JDK and the one built from OpenJDK source. This work will be complete when JDK 11 is released later this year and involves both the addition of components to the OpenJDK project as well as the removal of features from the Oracle JDK.
Much of this has been well publicized already. What were commercial features such as application class data sharing, Java Flight Recorder and Java Mission Controlhave all been contributed as open-source by Oracle to the OpenJDK project. Other features like JavaFX, the browser plugin, and Java Web Start will all be dropped from the Oracle implementation of JDK 11.
The point that I’m trying to get to is how this actually gets defined. It’s useful to put this into a Venn diagram to understand things a little more clearly.