Oracle lève le voile sur les améliorations dans Java 9
Oracle a publié une liste des des principales propositions d’améliorations prévues pour Java 9 sur le site d'OpenJDK. Java 9 est attendu fin 2015, début 2016.
Oracle a confirmé sur le site d’OpenJDK, les principales modifications espérées pour la version 9 de la plate-forme Java. Au programme, la poursuite des efforts en matière de modularisation initiés dans le cadre du projet JigSaw, mais aussi des améliorations en matière de logging, de Garbage Collection ( introduction d’un nouveau garbage collector, baptisé G1 ou Garbage-First) ou de sécurité. Logiquement, ces nouveautés devraient entrer en bêta dans le courant 2015 pour une sortie officielle fin 2015 ou tout début 2016.
Sur le site d’OpenJDK, Oracle dresse notamment la liste des principales propositions d’améliorations (ou JEP en langage Java, pour JDK Enhancement Proposals) retenues pour la version 9 de Java. Ces dernières incluent les propositions suivantes :
- 102: Process API Updates : L’objectif est d’améliorer l’API utilisée par Java pour contrôler et gérer des processus systèmes.
- 143: Improve Contended Locking : L’Objectif est d’améliorer la gestion du verrouillage pour l’accès en parallèle aux objets
- 158: Unified JVM Logging : L’objectif est de fournir un système de logging unifié pour les composants de la Machine virtuelle Java.
- 165: Compiler Control : cette proposition vise à améliorer les options de gestion pour la compilation JIT avec le compitaleur JIT HotSpot.
- 197: Segmented Code Cache : Divise le cache de code en segments distincts chacun comportant un type de code spécifique afin d’optimiser les performances.
- 198: Light-Weight JSON API : fournit une API pour consommer et générer des documents et des flux de données JSON.
- 199: Smart Java Compilation, Phase Two : Améliore l’outil
sjavac
pour permettre son utilisation par défaut dans la construction du JDK et vise à le généraliser pour pourvoir l’utiliser dans d’autres grands projets autres que le JDK. - 201: Modular Source Code : Définit une nouvelle organisation du code du JDK en modules, améliore le système de build pour compiler les modules.
- 211: Elide Deprecation Warnings on Import Statements : vise à supprimer les messages générés par les compilateurs java lorsqu’un programme fait appel à une méthode ou à une classe périmée
- 212: Resolve Lint and Doclint Warnings : vise à résoudre les problèmes d’alertes lint et doclint à la compilation
- 213: Milling Project Coin : il s’agit de tirer parti de certaines propositions du projet Coin datant de Java 7 en apportant par exemple le support de la syntaxe en losange, l’invocation simplifiée de la method Varargs, la possibilité d’utiliser le caractère underscore de façon arbitraire…
- 214: Remove GC Combinations Deprecated in JDK 8 : supprimer les combinaisons de garbage Collection qui ont été rendues obsolètes par la JEP 173 dans Java 8
- 216: Process Import Statements Correctly : corriger
javac
pour accepter convenablement et rejeter des programmes indépendamment de l’orrdre des déclarations d’importation et des clauses d’extends et d’implements. - 219: Datagram Transport Layer Security (DTLS) : définir une API pour le support de DTLS (Datagram Transport Layer Security) version 1.0 (RFC 4347) et 1.2 (RFC 6347).
- 224: HTML5 Javadoc : améliorer l’outil javadoc pour générer du code conforme à la spécification HTML 5
Notons qu’un snapshot des premières build d’OpenJDK 9 (JDK 9 Build b39) est disponible sur le site Java.Net.