Java Annotated Monthly – May 2016

For all its claims of being a grown up language, at times even the Java community can be somewhat dramatic, with organisations fighting each other over who has which rights, and community members demanding more from Java’s steward.  Still, Java SE is as healthy as ever and seeing progress towards the next release, and we’re even getting sneak peeks at features beyond Java 9.



This month Oracle is coming under fire from all directions with regards to its stewardship of Java. On the one hand, Oracle is fiercely protecting its rights over the platform. On the other, it appears to have neglected areas of the ecosystem, even shutting down some developer services. The Java EE Guardians group has been created to promote progress on Java EE 8, and is calling for a similar group to give JavaFX some love.

The Java Community Process, however, remains alive and well, and there are those who argue that this is the right place to progress Java EE 8, with input from other vendors in this space. Meanwhile, OpenJDK, which is not only the reference implementation for Oracle’s JDK but is also now going to be used for Android, continues to thrive and embrace input from organisations outside of Oracle.

While Oracle’s stance on Java can seem confusing and inconsistent, understanding Oracle’s motivations may shed some light on the situation. One thing is certain, Java’s popularity is as strong as ever, and with so many languages built upon the JVM, it’s still a safe platform to bet on.

Java 9

This month Java 9 should be feature complete, which means that if you’re not already using a version of the OpenJDK to play with new Java 9 features like Jigsaw and the REPL, now would be a great time to start. Running an early access version of Java 9 in something like a continuous integration environment, and feeding back information on unexpected behaviour, is a fantastic way to help the developers who work on the JDK to identify and iron out any problems before the official release next year.

…and Beyond

With Java 9 more or less finished (even if we’re not going to see it until next year), we’re already looking forward to what might appear in Java 10 and onwards. The Java language team has been soliciting advice on what developers think of local type inference, and how they would want that to look, leading to interesting opinions on the “right” way to do this in Java. The beauty of OpenJDK is developers can even try this feature out well before any decisions are set in stone.


Android Studio 2.1.1 is now out, which lets you develop with the Android N preview, so Android developers can finally have access to Java 8 features like Lambda Expressions and the Streams API.


Countering common claims of rivalry between Spring and Java EE, Marcus Eisele and Josh Long talk about how to get the two to work together in harmony.

So you claim you’re a polyglot programmer? This article examines whether this is really a valid approach to produce the best applications.

Think you know data structures? There’s always more to learn, particularly when it comes to performance, as this paper shows.

Don’t Forget…

…to get the latest patch for whichever version of IntelliJ IDEA and/or Android Studio you’re using as per this announcement.

Thanks for reading!

image description