Java s’adapte au Cloud Native Computing – The New Stack
Alors que Java continue d’être le langage de programmation le plus largement utilisé dans l’entreprise, comment se comporte-t-il dans l’écosystème cloud natif émergent ? Assez bien, a observé un panel d’ingénieurs d’Oracle qui travaillent le langage. En fait, ils estiment qu’il existe actuellement plus de 50 millions de machines virtuelles Java fonctionnant simultanément dans le cloud.
Dans cette dernière édition du podcast The New Stack Makers, nous avons discuté de l’état actuel de Java avec Georges Saab, vice-président du développement logiciel d’Oracle, pour le Java Platform Group ; Donald Smith, directeur principal de la gestion des produits Oracle ; et Charat Chander, directeur principal de la gestion des produits Oracle. Les rédacteurs en chef de TNS, Darryl Taft et Joab Jackson, ont animé la conversation.
Java s’adapte au Cloud Native Computing
Également disponible sur Apple Podcasts, Google Podcasts, Overcast, PlayerFM, Pocket Casts, Spotify, Stitcher, TuneIn
Les nouvelles initiatives en cours visant à modifier Java pour le rendre plus facile à utiliser et plus convivial pour les développeurs natifs du cloud sont peut-être les plus intéressantes dans la conversation. L’un est Project Amber, un effort pour incuber des fonctionnalités de langage Java plus petites et axées sur la productivité.
« Historiquement, Java, et en particulier Java Enterprise, a eu la réputation de nécessiter beaucoup de passe-partout. Et c’est quelque chose que nous nous engageons à faire progressivement [reducing] au fil du temps d’une manière compatible, ce qui permet aux développeurs d’être plus productifs, tout en s’assurant que nous nous retrouvons avec du code Java toujours super lisible et compréhensible », a noté Smith.
Un deuxième projet, appelé Panama, vise à faciliter l’interopérabilité entre Java et les langages natifs, tels que C++. Il peut être considéré comme une mise à jour de l’interface Java Native (JNI), plus sécurisée, performante et plus facile à utiliser. Pour répondre à l’évolutivité, la société a lancé le projet Loom, conçu pour réduire considérablement la difficulté d’écrire des applications simultanées efficaces, en déployant une construction de thread légère gérée par le runtime Java. L’objectif est de fournir un moyen de programmation plus simple que le mode « réactif » typique utilisé par de nombreux développeurs natifs du cloud aujourd’hui.
En conséquence, « le code que vous écrivez peut mieux évoluer, c’est que le code que vous écrivez est plus simple, il est plus facile à comprendre et à raisonner, il est plus facile à surveiller, à gérer et à déboguer », a déclaré Smith.
Sur le plan matériel, il y a le projet OpenJDK Java Valhalla, qui cherche à rééquilibrer la disparité croissante entre la puissance du processeur, qui a augmenté de façon exponentielle au cours des dernières décennies, et la mémoire, dont les capacités n’ont pas augmenté de façon aussi spectaculaire.
« Ce que nous avons vu, c’est une formidable évolution des performances des processeurs. Mais nous n’avons pas vu le même type de changement dans le comportement de la mémoire. Et, par conséquent, nous avons ces architectures où nous faisons toutes sortes de trucs pour essayer de nous assurer que la mémoire est accessible pour le CPU », a déclaré Smith. Valhalla prépare le terrain pour que les développeurs désignent des types de données plus avancés, qui seront utiles dans les travaux d’apprentissage automatique.
En plus de ces projets, l’équipe d’Oracle a également discuté de la nouvelle cadence accélérée des versions de Java, de l’utilisation de Java dans les conteneurs et d’autres sujets.