2017: veranderingen in Java

Het afgelopen jaar heeft Java veel veranderingen doorgemaakt. Aan het begin van het jaar verkeerde Java EE in een onzekere staat en de release van Java 9 was teruggeschoven vanaf de oorspronkelijk geplande releasedatum van 2016. Op JavaOne in 2016 heeft Oracle haar plannen aangekondigd om zowel het platform als informatie over Java SE 9 en OpenJDK 9 aan te spreken.

In juni 2017 heeft het uitvoerend comité van Java Community Process ingestemd met en het Java Platform Module System goedgekeurd, bekend als JSR 376, waarmee het fundament voor Java 9 wordt gelegd.

Java 9 werd eindelijk uitgebracht in september. Het heeft een modulaire architectuur in plaats van de monolithische architectuur die in eerdere versies van Java is te zien. Dit maakt schaalbaarheid op kleinere apparaten mogelijk, wat een functie was die in JDK 8 had moeten zijn opgenomen, maar op het moment van die release nog niet gereed was.

Java 9 bevat ook een koppelingstijdfase die optreedt tussen compileertijd en runtime. JShell heeft Read-Eval-Print-Loop-functionaliteit toegevoegd aan Java, waarmee ontwikkelaars onmiddellijk feedback kunnen krijgen terwijl ze code schrijven, waardoor het nuttig is voor beginners of zelfs ervaren Java-ontwikkelaars die experimenteren met een nieuwe API, bibliotheek of functie. Er waren ook verschillende nieuwe functies die de JVM-compilatie en -prestaties verbeterden, evenals verbeteringen aan de kernbibliotheek.

In juli 2016 wachtten ontwikkelaars nog steeds op nieuws over wanneer Java EE zou worden geüpdatet, en op dat moment was er geen informatie over van Java afkomstig van Oracle. Een groep genaamd de Java Guardians werd opgericht om te proberen Oracle Java EE de aandacht te geven die ze nodig hadden om verder te gaan. Op JavaOne in september sprak Oracle eindelijk over Java EE, zeggend dat het gepland was om het in 2017 af te ronden en te verzenden.

In augustus kondigde Oracle aan Java EE te willen verplaatsen naar een open source-basis. Een maand later zette Oracle Java EE over naar The Eclipse Foundation, waarbij Oracle de bestaande Java EE-licenties bleef ondersteunen. Volgens Oracle stelde de overstap naar The Eclipse Foundation organisaties in staat om “flexibeler processen aan te nemen, flexibeler licenties in te voeren en het bestuursproces te veranderen.”

De Eclipse Foundation heeft vele andere open-sourceprojecten en een community-based governance-aanpak. Dit maakt meer samenwerking op projecten en snelle innovatie mogelijk.

Ook in september stelde Oracle veranderingen voor aan de Java SE- en JDK-releasecyclus in een poging om de releases behendiger te maken in plaats van functiegestuurd. Het wil om de zes maanden een belangrijke release uitbrengen, te beginnen in maart 2018 met Java 9. Update-releases zullen elk kwartaal worden uitgebracht en ondersteuning voor de lange termijn komt om de drie jaar uit. Deze nieuwe releasecyclus is een afspiegeling van de manier waarop we tegenwoordig technologie versneld gebruiken, in tegenstelling tot de langere acceptatiecyclus in de eerste dagen van Java.

Op JavaOne in oktober biedt een aantal softwaretools aangekondigde nieuwe services. Parasoft heeft een update uitgebracht voor Jtest, een Unit Test Assistant voor Java. JNBridge heeft Java.VS aangekondigd, een plug-in waarmee ontwikkelaars Java-code kunnen schrijven in Visual Studio. Java.VS heeft ook een Java-code-editor, een Java-projectsysteem en laat Java-ontwikkelaars toe om het VS build-systeem en de debugger-interface te gebruiken.