Oracle
José est membre du Java Platform Group chez Oracle en tant que Java Developer Advocate. Il a été maître de conférences à l'université Paris 13 pendant 25 ans et est intervenu auprès de sociétés en formation et expertise. Il anime le blog technique "Java le soir" et contribue à divers projets Open source. Impliqué dans la communauté Java, il est trésorier de l'association BJPC, organisatrice des soirées du Paris JUG et cofondateur de Devoxx France qu'il a coorganisé les 3 premières années. Java Champion, plusieurs fois Java Rockstar speaker régulier pour Devoxx (FR, BE, UK), JavaOne, de nombreux JUG francophones, il est également auteur pour Java Magazine.
Twitter : @JosePaumard
Blog: http://blog.paumard.org/
Le projet Loom nous a apporté deux fonctionnalités en préversion dans le JDK 19 : les threads virtuels et la programmation concurrente structurée. Ces deux éléments reçoivent quelques mises à jour dans le JKD 20. Le troisième élément développé dans Loom a également été publié : un nouveau modèle de variables thread-local, appelé scoped values. Cette présentation fait le bilan de ces fonctionnalités, de l'état des patterns qui seront disponibles en programmation concurrente et asynchrone une fois Loom entièrement disponible, et ce que l'on peut attendre pour le JDK 21, prochaine version LTS qui sera publiée en septembre prochain.
La modélisation de données en Java est l'un des aspects du langage qui a très peu évolué depuis 15 ans. Les choses changent, puisque Valhalla commence à publier des éléments intéressants. La version LW5 apporte des classes primitives et des value classes. Le projet Amber remet les données au centre des applications : les records permettent de meilleures modélisations, et le Pattern Matching ainsi que les Types Scellés permettent de mieux écrire les traitements. Dans le futur, Valhalla permettra d'unifier les types objet et les types primitifs et de gérer différemment les valeurs nulles. Amber va continuer de développer le pattern matching avec les déconstructeurs pour les classes classiques et les patterns nommés. Ces nouvelles approches vont apporter de nouvelles façons d'organiser les applications, de mieux distribuer le code en modules indépendants, de créer des données sous de nouvelles formes et d'avoir de meilleures performances pour nos traitements en mémoire.