Développement : en dépréciant Java, Apple envisage un abandon du langage
En dépréciant son portage Java, Apple donne un signal à la communauté que les versions futures de Mac OS X pourraient être dépourvues de leur version de Java. Laissant entrevoir des problèmes de licencing avec Oracle. Une porte s’ouvre pour maintenir fermement un portage d’OpenJDK pour Mac.
Ceci n’est pas une révolution. Alors que tous les regards étaient tournés vers l’annonce des nouveaux produits d’Apple, le prochain MacOS X, Mac App Store et un Macbook Air revisité, la firme à la pomme, a jeté une nouvelle pierre dans le jardin des développeurs Java pour Mac.
Le groupe de Cupertino a donné un fort signal à la communauté Java en annonçant qu’il pourrait retirer son portage officiel de Java des futures versions de MacOS X, comme en témoigne une section du site développeur de l’éditeur. L’éditeur écrit : “A partir de la sortie de Java pour Mac OS X 10.6 Update 3, le portage de Java par Apple, et distribuée dans Mac OS X, est déprécié. Cela signifie que le runtime fourni par Apple ne sera pas supporté au même niveau et pourrait être retiré des futures versions de Mac OS X”. Et d’ajouter toutefois que “ le runtime Java fourni dans Mac OS X 10.6 Snow Leopard et Mac OS X 10.5 Leopard sera toujours supporté et maintenu à travers les cycles standards de ces produits”.
Dans le langage informatique, une fonction dépréciée (deprecated en anglais) informe les développeurs qu’elle est désormais dépassée et désuète et ne devra plus être utilisée dans les futurs développements. Elle indique généralement que l’éditeur estime qu’une fonction alternative est disponible. Ce que ne mentionne pas Apple aujourd’hui.
Cette décision intervient alors que Java est au centre de nombre de polémiques, notamment depuis qu'Oracle est devenu détenteur des clés du langage, avec le rachat de Sun. Rappelons que la firme de Larry Ellison poursuit également Google devant les tribunaux pour violation de copyright Java dans Android. Bien sûr, cette dépréciation de Java peut également donner un signal fort qu’Apple compte restreindre ses plates-formes aux seules outils de développement de la marque.
Un point de vue que partage Stéfane Fermigier, fondateur et président du Conseil de surveillance de Nuxeo, éditeur de solution ECM (Enterprise Content Management) Open Source en Java : “C'est la conséquence à la fois de la reprise en main de Java par Oracle et de la tendance d'Apple à vouloir contrôler toutes les technologies utilisées dans et par ses OS”, tout en précisant que “des histoires de licencing” sont peut-être à l’origine de la décision d’Apple.
Toutefois, cette information doit être nuancée, indique-t-il, car “Java va rester supporté dans Leopard et Snow Leopard ; L’annonce ne dit également pas que Java (en tout cas, le portage officiel par Apple) allait disparaitre dans les prochaines versions de Mac OS, seulement qu'il s'en réservait la possibilité. Enfin, Apple laisse la porte ouverte à des tierces parties pour fournir une version de Java qui pourra être intégrée facilement dans Mac OS.”
OpenJDK, une alternative possible
Mais quelles conséquences pour les développeurs Mac alors ? “ Pour des applications serveur (sans GUI), je ne me fais pas de soucis, le portage d'OpenJDK [une implémentation Open Source de Java initiée par Sun et aujourd’hui chez Oracle, NDLR] sous Mac marchera probablement aussi bien que sous Linux avec un minimum d'efforts”, explique Stéfane Fermigier. Le souci pourrait en revanche venir du côté GUI (interface graphique) et intégration dans Mac OS, où “une qualité moins grande de la JVM [Java Virtual Machine, NDLR] pourrait de faire ressentir”. Selon Stéfane Fermigier “Les éditeurs d'applications full Java qui ont une base d'utilisateurs solide sous Mac peuvent se faire quelques soucis, à eux de voir comment mitiger les risques (par exemple en mettant des ressources pour maintenir un portage de l'OpenJDK sous Mac OS)”.
A l’image par exemple de ce qu’a fait Ubuntu dans le monde Linux. “Ubuntu a effectivement annoncé qu'ils arrêtaient de distribuer la version Sun/Oracle de la JVM, mais il y a une version de remplacement 100% Open Source, l'OpenJDK, qui marche très bien sous Linux" explique Stéfane Fermigier. Autrement dit la communauté Open Source Linux est capable de se prendre en main sur la base du code de l'OpenJDK, avec des contributeurs nombreux dont certains sont employés par d'autres sociétés qu'Oracle (ex: Red Hat).
Rappelons au passage qu’IBM s’est récemment rangé derrière le projet OpenJDK, soutenu par Oracle. Donnant ainsi une impulsion très forte à OpenJDK en tant que plate-forme centrale dans le développement Java.