Depuis le 17 septembre 2024, Oracle Java 23 est disponible. Cette nouvelle version introduit 12 propositions d’amélioration (Java Enhancement Proposals, JEP) du Java Development Kit (JDK) qui visent à améliorer la productivité des développeurs. En outre, Java 23 apporte des améliorations significatives en termes de performance, de stabilité et de sécurité, aidant ainsi les entreprises à accélérer la croissance de leur activité.
Nouvelles fonctionnalités
Java 23 (JDK 23) contient 12 améliorations notables visant à améliorer l’expérience de développement :
- Types primitifs dans les patterns, instanceof et switch (JEP 455) : Améliore la correspondance des patterns en autorisant les patterns de type primitif dans tous les contextes.
- Déclarations d’importation de modules (JEP 476) : Simplifie la réutilisation des bibliothèques modulaires en permettant l’importation rapide et facile de tous les packages exportés par un module.
- Classes déclarées implicitement et méthodes principales d’instance (JEP 477) : Offre aux débutants une introduction en douceur à la programmation Java.
- Corps de constructeurs flexibles (JEP 482) : Java permet désormais de placer des instructions à l’intérieur du même constructeur avant d’appeler explicitement un autre constructeur.
Cela signifie que vous pouvez effectuer certaines initialisations ou vérifications avant d’appeler un autre constructeur. - API de fichier de classe (JEP 466) : Fournit une API standard pour l’analyse syntaxique, la création et la conversion de fichiers de classes Java.
- API vecteur (JEP 469) : Introduit une API pour les calculs vectoriels qui permet d’obtenir des performances supérieures à la moyenne.
- Rassembleur de flux (JEP 473) : Améliore l’API de flux pour prendre en charge les opérations intermédiaires personnalisées.
Cela signifie que vous pouvez désormais définir des opérations personnalisées qui seront exécutées pendant le traitement d’un flux. - Simultanéité structurée (JEP 480) : Simplifie la programmation simultanée en traitant des groupes de tâches connexes exécutées dans différents threads comme une seule unité de travail.
- Valeurs scopées (JEP 481) : Permet de partager de manière sûre et efficace des données immuables au sein d’un thread et entre des threads enfants.
Ceci est particulièrement utile lorsque des données doivent être partagées entre différentes méthodes ou threads sans être transmises en tant que paramètres. - ZGC : mode de génération par défaut (JEP 474) : Fait passer le mode par défaut du Z Garbage Collector en mode générationnel.
Cela signifie que le ZGC fonctionne désormais en mode générationnel par défaut, au lieu du mode non générationnel précédent.
Le mode non générationnel devrait être supprimé dans une prochaine version. - Commentaires de documentation Markdown (JEP 467) : Permet d’écrire des commentaires Javadoc en Markdown.
- Les méthodes d’accès à la mémoire obsolètes dans sun.misc.Unsafe doivent être supprimées (JEP 471) : Prévoit de marquer les méthodes d’accès à la mémoire dans la classe sun.misc.Unsafe comme obsolètes et de les supprimer dans une version future.
Ces méthodes ont été introduites à l’origine pour permettre aux classes Java dans le JDK et d’effectuer des opérations de mémoire de bas niveau.
Cependant, ces méthodes ne sont pas sûres et peuvent entraîner un comportement indéfini et des blocages de la JVM.
Nouveaux outils et services d’assistance
Java 23 est livré avec des outils de support robustes qui rendent la gestion et l’optimisation des applications Java plus faciles que jamais.
Java Management Service (JMS) 9.0 est un service natif sur Oracle Cloud Infrastructure (OCI) et est inclus dans l’abonnement universel Java SE. JMS 9.0 offre une console et un tableau de bord unifiés et donne aux entreprises une vue complète de leurs exécutions et applications Java. Cet outil de gestion centralisée simplifie la surveillance, le dépannage et l’optimisation des environnements Java, qu’ils soient sur site ou dans le cloud.
Un autre ajout important est le compilateur Graal JIT. Ce compilateur dynamique écrit en Java convertit le bytecode en code machine hautement optimisé. De cette manière, il améliore considérablement les performances des applications Java. Le compilateur Graal JIT est particulièrement avantageux pour les applications qui nécessitent des performances élevées et une faible latence. Il est inclus dans le JDK 23 d’Oracle et peut être utilisé sous la licence Oracle No-Fee Terms and Conditions (NFTC). Toutefois, le support commercial du Graal JIT n’est disponible que via l’abonnement Java SE Universal Subscription ou lors de l’exécution du JDK Oracle sur Oracle Cloud Infrastructure (OCI).
Licence
Oracle propose deux options principales pour l’octroi de licences Java :
Fonction | Oracle No-Fee Terms and Conditions (NFTC) | Java SE Universal Subscription |
Coûts | Gratuit pour l’utilisation en production et la redistribution | Abonnement payant basé sur le nombre d’employés |
Utilisation dans la production | Oui | Oui |
Mises à jour | Plus de mises à jour pour le JDK 23 à partir de mars 2025 avec la sortie du JDK 24. | Mises à jour continues et accès à toutes les améliorations de performance, de stabilité et de sécurité |
Support | Pas d’accès aux services de support d’Oracle | Support complet, y compris un accès 24h/24 et 7j/7 à My Oracle Support |
Outils supplémentaires | Aucun | Inclut Oracle GraalVM, Java SE Subscription Enterprise Performance Pack et Java Management Service |
Licence et déploiement | Gratuit pour la production et la redistribution | Licence et support pour Java SE sur les ordinateurs de bureau, les serveurs et dans le cloud |
FAQ
Qu’est-ce que Oracle Java ?
Oracle Java est un langage de programmation largement utilisé qui permet aux développeurs de créer des applications pouvant être exécutées sur n’importe quel appareil équipé d’une Java Virtual Machine (JVM). Grâce à cette capacité multiplateforme, Java convient à un large éventail d’applications, des applications mobiles aux grands systèmes d’entreprise.
Java est réputé pour ses fonctions de sécurité robustes et ses performances sont améliorées grâce au compilateur JIT (Just-In-Time) et à d’autres techniques d’optimisation.
L’écosystème Java comprend le Java Development Kit (JDK) pour le développement, le Java Runtime Environment (JRE) pour l’exécution des applications et la Java Virtual Machine (JVM) qui exécute le bytecode Java.
Qu’est-ce que le Java Development Kit (JDK) ?
Le JDK est un environnement de développement logiciel pour le développement d’applications et d’applets Java.
Il comprend des outils tels que le Java Runtime Environment (JRE), le compilateur, l’interpréteur/chargeur, l’archiveur, le générateur de documentation et le débogueur.
A quelle fréquence les nouvelles versions de Java sont-elles publiées ?
Oracle publie de nouvelles versions de Java tous les six mois.
Java 23 sera mis à jour jusqu’en mars 2025, date à laquelle il sera remplacé par le JDK 24.
Pourquoi les développeurs devraient-ils utiliser Java ?
Java est connu pour sa portabilité, son évolutivité et sa robustesse. Il permet aux développeurs d’écrire du code qui peut être exécuté sur n’importe quel appareil équipé d’une Java Virtual Machine (JVM), ce qui en fait un choix polyvalent.
Quels sont les avantages de la mise à niveau vers Java 23 ?
La mise à niveau vers Java 23 vous donne accès aux dernières fonctionnalités et améliorations.
Cela inclut des performances, une stabilité et une sécurité améliorées.
Les nouveaux JEP aident également les développeurs à augmenter leur productivité et à rationaliser le développement d’applications.
Qu’advient-il des utilisateurs de l’ancien Java 22 ?
- Java SE Universal Subscription : support et mises à jour continus pour Java 22 et accès aux services de support d’Oracle et à des outils supplémentaires.
- NFTC : utilisation et mises à jour gratuites pour Java 22 jusqu’en septembre 2024, mais pas d’accès au support commercial d’Oracle ou à des outils supplémentaires.
Les utilisateurs de Java 22 ne sont pas automatiquement mis à niveau vers Java 23. Les entreprises doivent télécharger et installer Java 23 manuellement si elles souhaitent effectuer une mise à niveau.
Plus d’informations
Téléchargez Java 23 ici : https://www.oracle.com/be/java/technologies/downloads/.
Pour une liste complète des modifications apportées à Java 23, veuillez consulter : https://blogs.oracle.com/java/post/the-arrival-of-java-23.
Pour le flux de lancement de Java 23, veuillez visiter : https://www.youtube.com/live/QG9xKpgwOI4.
En savoir plus sur l’abonnement Oracle Java SE Universal : https://www.oracle.com/java/java-se-subscription/.
Pour en savoir plus sur Oracle, veuillez visiter : https://www.schneider.im/fr/logiciels/Oracle.
Contactez-nous si vous avez besoin d’aide pour votre licence Oracle et demandez un devis dès aujourd’hui.