Could Java 9 be stalled due to IBM and Red Hat modulatory specification?
By Jamie Mercer
After issues raised by IBM and Red Hat, the Java 9 release date could change.
This month also saw developments concerning a project that didn’t quite make it into the final version of Java 9. Project Amber is designed to focus on smaller productivity-oriented features, with exciting advances made in the past month.
We’ve collected some of the most important highlights regarding Java, Kotlin language development and serverless computing.
Java module system may stall platform’s next release
An objection raised by IBM and Red Hat could delay the release of Java’s latest upgrade. Java 9, the ninth edition of standard Java, was scheduled for release in late July, but Red Hat and IBM have now opposed the module plan.
Although with most Java SE releases, feedback from the JCP (Java Community Process) can have the potential to affect timeline releases, based on over two years of feedback from the release of weekly preview builds, the Java’s Vice President of Development is confident that it meets the goals of the JSR (Java Specification Request).
Despite this, the Java expert group is still deliberating finishing touches, which Oracle expects to be resolved in time for a final vote.
Project Amber: The future of Java exposed
With Java 9 right around the corner—we rounded up the main details here—there were some features that didn’t quite make it. One of these features was Project Amber, which was first introduced in January. Java Language Architect, Brian Goetz, planned this project to explore and nurture smaller, productivity-oriented Java language features.
The features that will be part of this project have been accepted as candidate JEPs (JDK Enhancement Proposal). This process involves Oracle collecting proposals for enhancements to the Java Development Kit and OpenJDK. Once these proposals are approved, they will continue down the route to eventually becoming actual features in Java.
Although Brian notes that the project is not a place to think of or deliberate new and random ideas to improve Java, and that the internet is still available for that discussion.
Project Amber was welcomed into the Java community on March 16th along with the first three Java Enhancement Proposals implemented by it:
- Local Variable Type Interface (JEP 286)
- Enhanced Enums (Jep 301)
- Lambda Leftovers (JEP 302)
Read more about how these three projects got such special attention.
Google endorses Kotlin for Android development
Kotlin, a language built to run on the JVM, will join Android’s official language line up in Android Studio 3.0. The developers behind this previously promoted Kotlin for Android development.
Kotlin offers Android developers a chance to use a modern language that will assist in solving common issues such as runtime exceptions and source code verbosity.
Read more about how a non-profit foundation for Kotlin will help in the development of the language.
Kotlin improves code compilation and now required JDK 8
Kotlin 1.1.2 has been updated to offer improved compilation and better integration with the company’s IntelliJ Idea IDE. Additionally, there has been a few bug fixes and compatibility fixes with version 2.4.0-alpha of the Android Gradle plugin.
Kotlin allows development of server-side applications, Android apps, and frontend code to run in a browser. This will reduce the need to write boilerplate code.
Following on from these updates, Kotlin 1.1.2 now needs JDK (Java Development Kit) 8. Kotlin 1.1.2 still works with current JVM libraries and frameworks. There are no plans to get rid of the support for creating Java 1.6-compatible bytecode.
Read more about what Kotlin 1.1.2 will and will not support for future development.
Microsoft supports trends towards containers, serverless computing
At the Build 2017 conference, Microsoft introduced new technologies focusing on containers, serverless computing, and microservices as part of its DevOps strategy.
Continuous integration and continuous delivery, which combines development with testing and other parts of the application lifespan, is among the most common uses for containers.
Serverless Computing serves as a supplement of DevOps because it means developers and IT staff are free from having to set up and tune systems. Serverless code is usually activated by particular events, therefore users only pay for virtual machines once the code has been triggered.
Read more about how Microsoft is helping developers build systems with serverless computing.