De l'environnement de développement à la plate-forme
En quelques années, IBM a transformé Eclipse IDE en une plate-forme de développement et d'intégration de logiciels ouverte à plus de 150 partenaires. L'émergence d'une vraie alternative à Microsoft ?
01net.
le 09/04/07 à 07h00
sommaire
Voir tout le sommaire
Développé à la fin des années 90 par l'éditeur OTI (Object Technology International), Eclipse a très vite été acquis par IBM Canada pour remplacer Visual Age, son environnement de développement intégré Java de l'époque. Cette
genèse crée, aujourd'hui encore, une confusion entre l'atelier de développement Eclipse IDE et la plate-forme Eclipse, constituée de 65 projets complémentaires. ' Eclipse IDE est l'arbre qui cache la
forêt ', résume Didier Girard, directeur technique de la SSII Sfeir.
Eclipse voit le jour en fin 2001. Mais il faut attendre 2004 pour que ses logiciels s'appuient sur les recommandations de l'OSGi (Open Services Gateway Initiative), expliquant comment créer un moteur d'exécution extensible à
loisir. Dans le cas d'Eclipse, il s'agit d'Equinox. ' Celui-ci aide à assembler des composants standards pour créer n'importe quel logiciel : un outil de développement tel Eclipse IDE, ou une application métier comme
celles proposées par SAP ', explique Didier Girard. Equinox est donc à l'origine des 65 projets actuels de la fondation Eclipse.
Cette extensibilité a fait le succès d'Eclipse IDE, puis celui des autres technologies d'Eclipse. Grâce à elle, éditeurs et développeurs étendent les fonctions au gré de leurs besoins et de l'évolution de l'industrie logicielle.
De nombreux éditeurs d'outils de développement ont, par exemple, développé des plug in pour Eclipse IDE. Et trouvé, par ce biais, un moyen de survivre à la consolidation du marché. Les communautés open source ont pu, elles aussi, répondre à des
problématiques de niche sans devoir redévelopper l'ossature complète d'un IDE. De ce fait, Eclipse IDE est aujourd'hui l'atelier le plus utilisé dans la communauté Java, mais aussi chez les développeurs PHP.
Bâtir un écosystème plus large
D'Actuate à Borland en passant par Red Hat, CA, Intel, IBM, Nokia, SAP, Zend, ou Windriver, la fondation Eclipse a rallié plus de 150 éditeurs. Face à un tel succès, la fondation ne peut plus se focaliser sur son seul outil de
développement et son extension par plug in. ' Les besoins des entreprises et éditeurs qui utilisent des technologies d'Eclipse en dehors de son IDE s'avèrent très différents de ceux des éditeurs d'environnements de
développement ', rappelle Didier Girard. C'est notamment le cas de Nokia pour ses applications embarquées, ou de SAP pour ses outils de gestion. ' Seul le développement d'un écosystème plus large autour
de la fondation garantira la pérennité des technologies d'Eclipse sur le long terme ', estime donc Didier Girard. Une vision que partagent depuis peu les membres stratégiques d'Eclipse. ' Eclipse a
d'abord fourni des outils aux développeurs ', explique Mike Milinkovitch, directeur exécutif de la fondation Eclipse. Mais aujourd'hui, ' Equinox et Eclipse RCP (client riche s'exécutant sur
le poste de travail - NDLR) nous offrent l'opportunité d'étendre Eclipse aux socles d'exécution. D'ailleurs, certains PGI et outils de GRC s'appuient déjà sur eux. Il y a là un brillant avenir pour Eclipse ',
reconnaît-il.
En effet, la fondation Eclipse propose désormais une plate-forme complète et modulaire comprenant des frameworks de développement, des composants graphiques, les IDE associés, et même des serveurs. A l'image de la plate-forme
décisionnelle Birt, lancée par Actuate, et du système de gestion de contenu Apogée, initié par Nuxeo. Chacun de ces projets s'appuie sur un outil de développement, un framework, et des services, qui s'exécutent côté serveur. Ils partagent le même
outil de développement, Eclipse IDE (spécialisé en fonction des besoins à l'aide de plug in). Le moteur d'exécution de Birt est indépendant de celui d'Apogée. Mais tous deux reposent sur Equinox et sur des briques communes de plus haut niveau,
notamment Eclipse RCP.
Outre Eclipse RCP, la fondation propose d'autres moteurs d'exécution (accompagnés de leur framework de développement), tels eRCP (pour les périphériques mobiles) ou Rich Ajax Plat-form. La plate-forme Eclipse accélère donc la
construction des applications, par assemblage de briques techniques existantes qu'il suffit de spécialiser. Le dernier client Lotus Notes, véritable bureau métier, s'appuie sur Eclipse RCP, qui lui-même repose sur de nombreuses briques sous-jacentes
comme Forms ou Work-bench - lequel intègre SWT (classes graphiques Java), JFace, Workspace, etc.
Déjà sept grands domaines couverts
Au total, les 65 projets Eclipse couvrent aujourd'hui sept grands domaines : les outils et socles de développement pour les applications d'entreprise ; les outils et socles de développement pour les applications
embarquées ; les outils dédiés aux architectures orientées service ; la gestion du cycle de vie des applications ; les applications riches Internet (ATF/RAP) ; les clients riches desktop (RCP) ; et enfin, les frameworks
applicatifs. ' Et ce n'est qu'un début. Nous ne comptons pas nous arrêter en si bon chemin ', prévient Mike Milinkovitch. Les 150 membres cherchent, en effet, à étendre la portée de leur
plate-forme.
Une plate-forme organisée comme une distribution Linux
L'architecture en millefeuille d'Eclipse pousse aujourd'hui la fondation davantage à coordonner des projets qu'à développer des technologies de base. Comme la fondation Apache, Eclipse regroupe tous les projets d'importance
encore en phase de gestation dans une catégorie, baptisée incubateur. On en recense une vingtaine. Ils vont d'Aperi (soutenu par Brocade, Fujitsu, IBM, Cisco, et Network Appliance), qui vise à simplifier l'administration des environnements de
stockage grâce à une interface de programmation (API) standard, à Cosmos, qui fournit une API standard pour l'instrumentation de n'importe quel service d'une SOA, en passant par RAP (intégration d'Ajax à Eclipse IDE) et Apogée (plate-forme de
gestion de contenu). A terme, la fondation Eclipse et les communautés attenantes proposeront donc aux entreprises une plate-forme offrant à la fois les outils et les socles de développement de clients riches (desktop et internet), mais aussi une
infrastructure complète de services techniques et fonctionnels : décisionnel, gestion de contenu, travail collaboratif, gestion du cycle de vie, etc.
Avec autant de projets, la plate-forme Eclipse ressemble de plus en plus à Linux, avec son noyau (Equinox), ses bibliothèques clés (SWT, Eclipse RCP, etc.), et ses outils livrés par défaut (Eclipse IDE, Birt, etc.). La fondation
essaie donc aujourd'hui de regrouper ses outils et bibliothèques dans une distribution coordonnant la sortie des versions majeures. La plus récente, Callisto, comprend dix outils, dont Birt (décisionnel), WTP (outils web), EMF (modélisation), et
Eclipse IDE. Elle représente le travail de 260 responsables nommés ' committers ', issus de 15 entreprises, pour un total d'environ 7 millions de lignes de code. La prochaine distribution, Europa, est
déjà sur les rails. Elle montre l'évolution du simple IDE à une communauté développant une plate-forme. D'autant que Callisto n'est pas la seule initiative. Une dizaine de distributions Eclipse, créées par des communautés open source ou des
éditeurs, existent déjà.
La plate-forme Eclipse s'imposera-t-elle, à terme, comme le seul autre choix face à la plate-forme Microsoft ? Tel est le v?"u d'IBM, qui, avec Workplace propose déjà un bureau métier alternatif. Reste à la fondation
Eclipse à imposer ses socles d'exécution avant ceux de Microsoft. Afin d'y parvenir, ' elle devra s'ouvrir à des membres moins techniques pour présenter la plate-forme aux décideurs. L'émergence d'un écosystème autour de la
fondation est une condition sine qua non à la réussite d'Eclipse ', conclut Didier Girard.
Une architecture modulaire
Pour faciliter la réutilisation des composants tout en restant modulaire, la plate-forme Eclipse privilégie une approche par composants, répartis sur plusieurs couches selon les préconisations de l'OSGi.
Réponses d'expert : Didier Girard, directeur technique de la SSII Sfeir
Pourquoi associe-t-on encore Eclipse à un IDE alors que la fondation compte 65 projets ?
' Parce que ce sont encore les éditeurs d'IDE qui maîtrisent l'évolution des briques de base d'Eclipse. Or, leurs besoins s'avèrent très différents de ceux des entreprises qui développent des logiciels métier.
Eclipse ne sera perçue comme une plate-forme que lorsque d'autres communautés émergeront en parallèle pour, par exemple, optimiser le développement d'applications de gestion. Face à la fondation Eclipse, des contre-pouvoirs doivent se créer. Ce
serait le plus bel indicateur de la pérennité du projet dans son ensemble. '
Pourquoi ? Existe-t-il des initiatives dans ce sens ?
' Ces contre-pouvoirs feront avancer la plate-forme dans des directions différentes de celles voulues par la fondation. Dans le monde Java, les EJB 3.0 sont le fruit de l'innovation open source, qui s'est déroulée
en parallèle du JCP avant d'être officialisée. Dans l'univers Eclipse, IBM est le premier à défendre la vision dun bureau métier alternatif avec Workplace Rich Client Edition, bâti sur Eclipse RCP. '