Oracle a publié la version 14 du langage de programmation Java et de la machine virtuelle.
L'ensemble des fonctionnalités est le même que celui indiqué en décembre 2019, lorsque le projet entré dans la phase rampdown.
Il convient de noter en particulier l'arrivée en Preview d'une fonctionnalité linguistique majeure - les Records. InfoQ a précédemment présenté un un examen approfondi des Records par Brian Goetz.
En plus des Records, Java 14 contient également quelques premières étapes vers le pattern matching - qui est destiné à devenir une caractéristique majeure au fil du temps.
Ces premières étapes consistent en un premier exemple d'un pattern (essentiellement un prédicat combiné à une liaison de variable) - le pattern instanceof.
Parallèlement à cela, la version standardisée des expressions switch de Java a également été livrée. Ces fonctionnalités devraient être intégrées dans les futures versions de Java et sont coordonnées au sein d'OpenJDK par le projet Amber.
Une autre fonction qui pourrait s'avérer très utile est le JFR Event Streaming - qui étend la technologie Java Flight Recorder avec un mécanisme de callback. Cette fonctionnalité ouvre la voie à des outils de surveillance et d'observabilité permettant de collecter facilement des données via JFR à partir de clusters de JVM, plutôt que de devoir faire face aux limites de l'approche actuelle de JFR qui consiste à utiliser un seul fichier enregistré par JVM.
Java 14 apporte également un certain nombre de modifications internes (tel que G1 compatible avec NUMA), de dépréciations (le portage Solaris) et de suppressions (CMS) dans le cadre de la release.
Il convient de noter que Java 14 n'est pas une version LTS (Long time Support), il reste donc à voir dans quelle mesure les développeurs adopteront cette nouvelle version.
Dans une étude récente de New Relic, les données indiquent que très peu d'entreprises utilisent des versions non LTS de Java - ce qui soulève la question : Java 14 va-t-il être la version qui brise le pattern ?
Java 14 est disponible pour téléchargement depuis Oracle et sera disponible auprès d'autres fournisseurs, y compris AdoptOpenJDK, bientôt.