Evènements

Roadmap Java jusqu’en 2021

Publié le : Auteur: Abdenour BOUATELI Laisser un commentaire
evenement

Oracle a présenté au mois de mars 2012, lors du QCON à Londres, la feuille de route du JDK pour les 10 prochaines années, et a également dévoilé les principales évolutions qui toucheront Java SE d’ici 2021. Ces évolutions majeures en particulier sur la gestion des objets et sur des réponses aux problématiques du Cloud Computing et du Big Data :
http://www.infoq.com/presentations/To-Java-SE-8-and-Beyond
JavaSE_2021

Oracle a aussi dévoilé la feuille de route du kit de développement Java (JDK). Sur ce point, Oracle prend le contre-pied de Sun qui avait tendance à peu communiquer sur ses intentions, et se projette même très loin dans l’avenir :
JavaJDK_2021

Les évolutions annoncées

JDK8

JDK8 introduira  les Expressions Lambda(Closure), les annotations sur tous les types, une nouvelle API « Date and Time API », JavaFX 3.0, l’interopérabilité JavaScript, la convergence des JVM, etc.

Sur le plan du Cloud, le multi-tenant sera l’un des objectifs de JDK 8 – avec à la clé une meilleure gestion du partage entre JVM sur un même OS et par thread.

JDK9

Avec Java SE 9, Oracle compte renforcer l’interopérabilité de son framework, et travailler plus que jamais sur une machine virtuelle Java (JMV) multi-langages (la JVM actuelle prend déjà en charge JRuby, Scala et Groovy).

Une machine virtuelle Java hypervisor-aware fera son apparition avec JDK 9, avec une gestion partagée de la mémoire. Cette version sera aussi centrée sur le traitement massif de données, et introduira la prise en charge de l’accélération GPU (pour Graphics  Processing Unit) et FPGA (pour Field Programmable Gate Array).

JDK10

JDK 10 introduira un système de type unifié, à travers lequel tout sera géré à travers des objets, sans nécessité de recourir aux traditionnelles primitives – qui devraient donc disparaitre à terme.

JDK11 et JDK12

Enfin, concernant les  JDK11 & JDK12, Oracle a également insisté sur sa volonté de s’orienter vers un modèle de développement plus ouvert et coopératif, notamment à travers le projet OpenJDK. La volonté du groupe serait donc de donner plus de place à la communauté des développeurs Java et à ses partenaires dans le processus d’évolution du framework Java.

Ma conclusion

La  roadmap est satisfaisante, par contre les évolutions sur la sécurité et l’optimisation du garbage collector n’ont pas été abordées.

Quant aux Closures introduites dans Java8, je suis un peu déçu, car Java reste en retard par rapport à C#, comme souvent. Je m’attendais plutôt à des Closures requêtées, et bien c’est raté!
Par rapport à Spring, je me demande comment Spring continue à fonctionner avec des Closures. Faut-il prévoir une injection par  pattern ?

Enfin, ces évolutions auront sans doute des impacts considérables sur :

  • la pérennité de la plateforme : productivité, performance et évolutivité
  • les développeurs Java: nouvelles façons de coder
  • les architectures autour de Java: nouvelles architectures Multi-coeur, GPU, ARM, Mac OS