Créé le 30 septembre et mis à jour ce 7 octobre, le JEP (JDK Enhancement Proposal) a fait une proposition pour le développement des bibliothèques Java avec la méthode dite tip and tail. Ce modèle comprend la version tip où celle-ci contient de nouvelles fonctionnalités et des corrections de bogues. La version tail ne comprend elle que des corrections de bugs critiques, en faisant en sorte de rétroporter le moins de code possible de la version tip vers les versions tail. Le JDK lui-même utilise cette méthode depuis 2018 pour proposer des fonctionnalités supplémentaires à un rythme plus rapide et fournir des mises à jour fiables et prévisibles, axées sur la stabilité.
Les objectifs de la proposition sont les suivants :
- Aider l'écosystème Java à maintenir l'équilibre entre une innovation rapide pour les nouveaux développements et de la stabilité pour les développements à long terme ;
- Reconnaître que les développeurs d'applications ont des points de vue différents sur les changements qui imposent une mise à jour des bibliothèques et du JDK ;
- Veiller à ce que les développeurs de bibliothèques n'aient pas à choisir entre le support aux utilisateurs des anciens JDK et l'adoption de fonctionnalités supplémentaires, comme les threads virtuels et les modèles, qui enthousiasment les utilisateurs des récents JDK ;
- Ne pas contraindre les cycles de publication des bibliothèques, les schémas de version ou les mauvais choix.
Des avantages pour les développeurs
La proposition explique que le modèle « tip and tail » est une forme simplifiée de celui baptisé « multi-train », qui propose aux bibliothèques de servir une base d'utilisateurs diversifiée tout en adoptant les récentes fonctionnalités de Java. Le modèle « tip and tail » apporte aux utilisateurs soucieux de la stabilité ce dont ils ont besoin, à savoir des correctifs et des patchs, tout en donnant aux développeurs qui construisent des systèmes ce qu'ils veulent, à savoir des fonctionnalités et des améliorations, à un rythme plus rapide. Toujours selon la proposition, la méthode donnera à la plate-forme Java la capacité de rester attractive pour les nouvelles applications tout en préservant l'avenir des applications existantes.