novembre
2006
Si vous suivez l’actualité informatique vous avez sûrement entendu parler du rapprochement entre Adobe et Mozilla, qui s’est concrétisé par la publication du moteur ActionScript d’Adobe sous triple licence GPL/MPL/LGPL sous l’égide de la Mozilla Foundation, ce qui a donner naissance au projet Tamarin (lire le communiqué officiel pour plus de détail).
A la veille du passage en open-source de la plateforme Java par Sun, il est intéressant de voir les raisons qui ont poussé Adobe à abondonner leur licence propriétaire pour une licence open-source.
Pour ceux qui l’ignorerait, ActionScript est le langage de script utilisé dans les applications Flash, mais son intérêt (pour Mozilla) vient du fait qu’il s’agit d’une implémentation de la norme ECMAScript, tout comme JavaScript ou encore le JScript de Microsoft. Bref ActionScript, em>JavaScript, JScript ou ECMAScript représente le même langage (mais pas forcément avec les mêmes API).
Mais Adobe a beaucoup investi dans ce moteur en développant une machine virtuelle (nommé AVM2) qui utilise un compilateur JIT permettant de compiler le code nativement avant de l’exécuter, et ainsi d’obtenir des temps d’exécution nettement plus rapide qu’en mode interprété comme c’est le cas actuellement pour ces langages (Adobe parle d’un facteur de l’ordre de 10 fois plus rapide).
On peut penser qu’Adobe aurait mieux fait de garder jalousement sa technologie pour la prochaine version de Flash, au lieu de la partager avec Mozilla et le monde open-source en général. Toutefois, Adobe et Mozilla ont tout les deux un intérêt a partager leurs connaissances et leurs techniques dans l’implémentation d’ECMAScript, puisqu’il est utilisée dans leurs produits phares respectifs.
- Pour Mozilla, cela permet de bénéficier d’une technologie de pointe pour exécuter de l’ECMAScript, ce qui pourrait améliorer les performances des applications Web en AJAX et des applications XUL (utilisé pour l’interface du navigateur et de ses extensions).
- Pour Adobe, qui va sûrement recevoir une aide non négligeable de la part de Mozilla (et de la communauté open-source) pour faire évoluer sa machine virtuelle, et notamment en ce qui concerne la future norme ECMAScript 4.
- Enfin, la communauté open-source gagne une technologie de pointe pour exécuter de l’ECMAScript.
Ainsi, tout le monde y gagne : au lieu d’avoir plusieurs implémentations d’un même langage, les efforts de chacun sont réunis dans une implémentation commune.
Pour plus de détail sur le sujet, je vous invite à lire le Tristant Nitot (président de Mozilla-europe).
Et Java alors ?
Quel est l’intérêt pour Sun de libérer Java ? C’est exactement la même chose, mais à une échelle bien plus importante !
En effet, ce qui sera libéré avec Java est bien plus qu’un simple langage, puisqu’il s’agit de toutes les plateformes Java SE et Java ME. Ces dernières deviennent de plus en plus importantes et de plus en plus complexes, en couvrant un grand nombre d’aspects et de technologies différentes. Il suffit de jeter un coup d’oeil à la liste des JSRs pour s’en convaincre.
Sun n’a pas les moyens de proposer une implémentation pour couvrir chacune de ces technologies (ni aucun des autres acteurs du monde Java d’ailleurs), mais si tous ces acteurs participent à l’effort commun pour l’élaboration d’implémentations open-source, chacun y trouvera un intérêt comme dans le cas d’Adobe et Mozilla.
Les différents acteurs de Java pourraient ainsi se partager un ensemble d’implémentation de référence assez conséquent, et ainsi permettre d’encore plus se concentrer sur leurs logiques métiers spécifiques. Au final, tout le monde y gagnerait puisque chacun pourra profiter du résultat du travail des autres.
Bref, les efforts de chacun sont mutualisés au lieu de se faire concurrence.
2 Commentaires + Ajouter un commentaire
Tutoriels
Discussions
- L'apparition du mot-clé const est-il prévu dans une version à venir du JDK?
- Classes, méthodes private
- [REFLEXION] Connaitre toutes les classes qui implémentent une interface
- [ fuite ] memoire
- jre 1.5, tomcat 6.0 et multi processeurs
- Recuperation du nom des parametres
- Possibilité d'accéder au type générique en runtime
- Difference de performances Unix/Windows d'un programme?
- Définition exacte de @Override
>> – J’imagine qu’il pourra dorénavent y avoir des implémentations libres du lecteur flash…
Cela ne concerne que le moteur ActionScript et pas Flash en lui-même ni ses API propriétaires. Ce n’est pas Flash qui passe en open-source mais son moteur de script…
Mais c’est sûr que le passage en open-source de Flash serait tout aussi bénéfique…
a++
La meilleure news que j’ai vu ce mois ciet peut-être même du précédent.
– J’imagine qu’il pourra dorénavent y avoir des implémentations libres du lecteur flash… Bonne nouvelle pour Linux, au lieu d’attendre qu’Adobe le développe, la communauté pourra s’en charger
– J’imagine aussi qu’avec les intégrations de diverses langages dans Java, flash va pouvoir être incorporé également et l’on pourra faire tourner des appli flash en java… En tout cas si sun ne le fait pas, j’imagine bien que la communeauté libre pourrait s’en charger.
Peut-être mon imagination me joue-t-elle des tours mais bon, ça fait un peu rêver !