Aller au contenu

Préférences et cookies

Afin d’améliorer votre expérience sur notre site et de réaliser des statistiques de visites, nous utilisons des cookies. Rien n’est déposé sans votre accord, et le refus n’enlève l’accès à aucun contenu. Ce choix peut être modifié à tout moment.

Gérer les traceursVos données

Personnaliser

ArticleApplications & Développement

JDK 14 : Les fonctionnalités à venir dans Java 14

Les expressions de commutation font partie des fonctionnalités à venir de la prochaine version de l'édition standard de Java prévue en 2020. De même que le support de la mémoire non-volatile NVM pour le partage de mémoire par la mise des flux de données en tampons.

La rédaction

Les développeurs de Java ne perdent pas de temps. Java 13 est à peine sorti - c’était le 17 septembre - qu’ils ont déjà commencé à travailler sur la version suivante, Java 14. Une fonctionnalité officielle a même été formalisée et une autre le sera probablement sous peu. Le 17 septembre, Oracle a annoncé que le kit de développement Java 14 (JDK 14) serait probablement livré avec la version finale des expressions de commutation. De plus, une proposition d'amélioration JDK Enhancement Proposal (JEP) pour le JDK 14, publiée sur openjdk.java.net, devrait permettre le support de la mémoire non-volatile NVM pour le partage de mémoire (ou bytebuffering) par la mise des flux de données en tampons (ou file mapping).

Si le JDK 14 respecte le calendrier de sortie à six mois fixé pour Java, la version de production de cette mise à jour pourrait arriver en mars 2020. Le JDK 14 étant une version non-LTS (support à long terme), elle sera supportée pendant six mois avant de laisser la place à une version ultérieure. Parce qu’elles permettent d’utiliser le commutateur soit comme instruction soit comme expression, les expressions de commutation simplifient le codage. Déjà présentes en preview dans le JDK 12 et le JDK 13, les expressions de commutation devraient figurer de manière permanente dans le JDK à partir du JDK 14. Ces dernières préparent également à l'utilisation du filtrage par motifs dans la commutation, ce qui permettra aux développeurs d'extraire conditionnellement des composants des objets de manière plus concise et plus sûre.

Support de la mémoire non-volatile pour le partage de mémoire

En attendant la formalisation officielle de la proposition relative aux expressions de commutation, la seule fonctionnalité officiellement ciblée pour le JDK 14 concerne le support de la mémoire non-volatile NVM pour le partage de mémoire par la mise des flux de données en tampons. Cette possibilité de mettre en tampon des flux de données en mémoire non-volatile ouvrirait la voie à de nouveaux modes de mapping spécifiques au JDK, notamment la possibilité d'utiliser l'API FileChannel pour créer des instances MappedByteBuffer se référant à une mémoire non-volatile (NVM). La mémoire non-volatile NVM (Non Volatile Memory) permet aux programmeurs de construire et de mettre à jour le statut du programme à mesure des exécutions sans provoquer d’importantes opérations de copie ou de traduction habituellement requises par les opérations d'entrée et de sortie. Ce mode d’exécution est particulièrement important pour les programmes transactionnels. L'objectif principal de cette proposition d'amélioration du JDK est donc de s'assurer que les clients peuvent accéder et mettre à jour le NVM d'un programme Java de manière cohérente et efficace.

Un second objectif est de mettre en oeuvre ce comportement de validation à l'aide d'une API restreinte, interne au JDK, définie dans la classe Unsafe, pour qu'elle puisse être réutilisée par des classes autres que MappedByteBuffer qui auraient besoin de réaliser leur validation en mémoire NVM. Un autre objectif est de permettre aux tampons mappés en NVM d'être suivis par des API existantes impliquées dans des fonctions de surveillance et de gestion. Linux/x64 et Linux/AArch64 font parti des plates-formes cibles OS/CPU. Les versions bêta du JDK 14 pour Linux, Windows et MacOS sont téléchargeables sur jdk.java.net.

Newsletter

La Quotidienne LMI

Recevez chaque matin l’actualité IT de la rédaction.

JDK 14 : Les fonctionnalités à venir dans Java 14