background preloader

Java 9 : ce que l'on sait

Java 9 : ce que l'on sait
Oracle travaille sur la prochaine version majeure de Java. Au programme : un environnement modulaire, plus performant, et le support de HTTP 2.0... Le coup d'envoi des travaux autour de Java SE 9 Platform a été lancé par Oracle dès 2014. Depuis, le groupe a bien progressé. Les nouveautés : APIs, JShell, HTTP 2.0... Une partie des évolutions apportées par Java 9 concerne les API. Jigsaw au programme pour plus de modularité Mais beaucoup d'autres évolutions sont au programme de Java 9. Jigsaw : une infrastructure plus modulaire Initialement prévu pour Java 8, le projet Jigsaw est aussi partie prenante de Java 9. Java 9 est livré avec un JDK lui-même modulaire (et conçu de telle sorte qu'il évite les dépendances circulaires entre ses différents modules). Amélioration des performances La roadmap Source sur le site du projet OpenJDK Où en est JEE ? Oracle a pu être critiqué sur sa manière d'orchestrer le projet open source JEE. Java en pratique :

Oracle s'explique sur le système de modules de Java 9 Prévu dans Java 9, le système de modules doit permettre d’améliorer ses performances. (crédit : D.R.) En annonçant un système de modules pour améliorer l'évolutivité et les performances de Java, Oracle cherche à remplacer son système de classpaths par des composants capables de fixer plus précisément les dépendances. Parmi lesquels on trouvera java.sql pour gérer la connectivité de la base de données ou encore java.logging pour l'identification. Selon un responsable d‘Oracle, le système de modules de Java SE (Standard Edition) 9, attendu pour l'année prochaine, permettra de traiter chaque module comme un composant fondamental et améliorera l'évolutivité et la performance de la plateforme. Dans un blog, Mark Reinhold, architecte en chef de la plate-forme Java chez Oracle, a exposé les objectifs du système de modules. Le langage des modules deviendra familier dans quelques années Selon la définition de Mark Reinhold, un module est un ensemble de code et de données autodécrites.

JDK 9 : la nouvelle date de sortie est fixée au 27 juillet 2017, après acceptation de la demande de report de Mark Reinhold Comme c’était prévisible, le JDK 9 ne sera pas prêt pour être livré le 23 mars 2017, comme c’était prévu. La sortie initiale de Java 9 avait été annoncée pour le 22 septembre 2016. Mais en décembre dernier, Mark Reinhold, architecte en chef du JDK chez Oracle, a demandé un délai supplémentaire de six mois pour la finalisation de Jigsaw, un projet dont l’objectif est de concevoir et mettre en œuvre un système de modules standards pour Java SE. Après validation de sa proposition, la date de sortie de Java 9 a donc été repoussée au 23 mars 2017, avec donc un décalage dans le reste du calendrier. Dans la nouvelle feuille de route qui a été adoptée, le développement du JDK 9 devait franchir une nouvelle phase le 1er septembre 2016 : le Rampdown Phase 1. D’après Oracle, cette étape permet d’appliquer « des niveaux de contrôles croissants » aux changements entrant dans la nouvelle version du JDK afin de corriger les bogues de priorité P1-P3. « Quatre-vingt cinq JEP sont ciblés sur JDK 9.

Oracle livre un guide pour préparer les développeurs à Java 9 Oracle a publié un guide à l'attention des développeurs. Objectif : leur faciliter le passage de Java 8 à Java 9. Afin de préparer l’arrivée de Java 9, dont la sortie est prévue en juillet prochain, Oracle a décidé de délivrer aux développeurs quelques conseils sur la manière d’adapter les applications, à la modularisation en particulier, grande nouveauté de la future mise à jour. Le guide de migration JDK (Java Development Kit) 9 précise que chaque opération peut induire des incompatibilités dans les binaires, les sources et les comportements par rapport aux versions précédentes. « La modularisation de la plate-forme Java SE apporte de nombreux avantages, mais également de nombreux changements », a déclaré Oracle. « Le code qui utilise uniquement les API officielles de la plate-forme Java SE et les API JDK spécifiques prises en charge devraient continuer à fonctionner sans modification. De nombreuses API internes du JDK encore inaccessibles Le client Windows 32 VM abandonné

JDK 10 : le projet pour l'implémentation de la plateforme Java 10 est ouvert, qu'attendez-vous de cette nouvelle version ? Les développeurs Java sont dans l’attente de Java 9 dont la sortie initiale annoncée pour le 22 septembre 2016 a été repoussée à deux reprises. Cette version va introduire comme fonctionnalité majeure le concept de modularisation avec le projet Jigsaw qui est d’ailleurs pointé comme responsable du retard qu’a connu le JDK 9. Comme annoncé le mois dernier, Java 9 sera également livré avec le support de la compilation anticipée (ou compilation AOT). La compilation anticipée est une compilation qui traduit un langage évolué en langage machine avant l'exécution d'un programme. Elle s’oppose à la compilation à la volée (JIT) qui se fait lors de l'exécution du programme. La compilation AOT va donc permettre de compiler les classes Java en code natif avant de lancer la machine virtuelle. Il s’agit toutefois d’un début d’implémentation de la compilation AOT, raison pour laquelle il y aura certaines limitations dans le JDK 9 qui devraient être traitées dans les prochaines versions. Et vous ?

Java SE 9 en passe d'être officiellement en examen public des spécifications, Oracle annonce la disponibilité de la version préliminaire Dans un message publié dans la liste de diffusion OpenJDK, Iris Clark, un consultant Oracle, a annoncé que la version préliminaire de la spécification d’examen public (PRS, Public Review Specification) pour Java 9 est disponible. Si l’accueil est favorable, cette ébauche sera soumise la semaine prochaine aux autorités compétentes, notamment le JCP PMO (Java Community Process Program Management Office) pour lancer officiellement la période d’examen public. Dans son message, Clark a expliqué que « la spécification principale a légèrement changé par rapport à l'EDR, notamment par une réduction du nombre d'API proposées qui doivent être retirées de la section 10. Nous avons également découvert que deux JEP (252 - utilise les données locales CLDR par défaut ; 280 - indique la concaténation des chaînes de caractères) ont un impact sur l’API SE, donc elles ont été ajoutées à la liste des fonctionnalités des sections 5 et 6 ». Caractéristiques Bibliothèques de base Sécurité Bibliothèques clients

Related: