Eclipse (logiciel)

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir Eclipse.
Image:Eclipse-logo.png Eclipse
Développeur Eclipse Foundation
Dernière version 3.3.2 - Europa Winter (le 21 février 2008)
Version avancée 3.4 M7 - Ganymede (le 2 mai 2008)
Environnement Multiplate-forme
Langue Multilingue
Type IDE
Licence EPL
Site web www.eclipse.org

Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant potentiellement de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. Eclipse IDE est principalement écrit en Java (à l'aide de la bibliothèque graphique SWT, d'IBM), et ce langage, grâce à des bibliothèques spécifiques, est également utilisé pour écrire des extensions.

La spécificité d'Eclipse IDE vient du fait de son architecture totalement développée autour de la notion de plug-in (en conformité avec la norme OSGi) : toutes les fonctionnalités de cet atelier logiciel sont développées en tant que plug-in.

Plusieurs logiciels commerciaux sont basés sur ce logiciel libre, comme par exemple IBM Lotus Notes 8, IBM Symphony ou Websphere Studio Application Developer.

Sommaire

[modifier] Architecture

La base de cet environnement de développement intégré est l'Eclipse Platform qui est composée de :

  • Platform Runtime démarrant la plateforme et gérant les plug-ins
  • SWT la bibliothèque graphique de base de l'EDI
  • JFace une bibliothèque graphique de plus haut niveau basée sur SWT
  • Eclipse Workbench qui est la dernière couche graphique permettant de manipuler des composants tels que des vues, des éditeurs, des perspectives...

Ces composants de base peuvent être réutilisés pour développer des clients lourds indépendants d'Eclipse grâce au projet Eclipse RCP (Rich Client Platform).

L'ensemble des outils de développement Java sont ensuite ajoutés en tant que plug-ins. Ces plug-ins sont regroupés dans le projet JDT.

Ces plug-ins Eclipse sont architecturés selon les recommandations de OSGi.

[modifier] Projets Eclipse

  • Eclipse Project le projet fondateur comprenant Eclipse Platform, Eclipse Rich Client Platform (RCP) et le Java Development Tools (JDT)
  • Web Tools Platform project (WTP) propose de nombreux outils pour le développement d'applications web en Java.
  • C/C++ Development Tools Project (CDT) est un environnement complet de développement pour les langages C et C++ pour Eclipse.
  • Business Intelligence and Reporting Tools Project (BIRT)
  • Test and Performance Tools Platform (TPTP)
  • Visual Editor project (VE)
  • Eclipse Modeling Framework la partie Model du pattern MVC (à noter que le framework ne propose pas de visuel pour représenter le model). Le model peut être persisté sous différentes manières: XSL, Fichiers java avec annotations XDoclet, XMI, ..., puis la possibilité de rajouter son système de persistance. À noter que EMF gère la persistance sous forme de plusieurs fichiers ressources reliées, et qu'en implémentant son propre système de persistance, vous ne perdez pas cet atout. (EMF)
  • Graphical Editing Framework est un environnement pour le développement de visuels graphiques (la partie View du MVC + un support de la partie Controller) avec abstraction totale du Model mais possibilité de le modifier via une infrastructure qui organise une serie d'implémentations du pattern 'Command'. Cette infrastructure est aussi utilisée pour le fonctionnement interne de GEF (GEF)
  • Graphical Modeling Framework qui est venu historiquement après GEF et EMF pour relier les deux frameworks. Un travail que faisait jusque là la société Omondo avec le produit EclipseUML (GMF)
  • Generative Modeling Technology (GMT)
  • ATLAS Transformation Language (ATL)
  • ATLAS Model Weaver (AMW)
  • ATLAS Megamodel Manager (AM3)
  • UML2 est un projet pour le développement de modèles UML 2.0 dans Eclipse (UML2)
  • AspectJ est un projet permettant la programmation orientée aspect pour Java dans Eclipse (AspectJ)
  • Eclipse Communication Framework (ECF)
  • Data Tools Platform Project (DTP)
  • Device Software Development Project (DSDP)
  • COBOL IDE for Eclipse Subproject (COBOL)
  • Parallel Tools Platform (PTP)
  • Embedded Rich Client Platform (eRCP)
  • AJAX Toolkit Framework est un projet visant à proposer des outils pour le développement d'applications AJAX (ATF)
  • RadRails est un environnement destiné au développement avec le framework (Ruby on Rails)
  • PHP Development Tools framework (PDT) est destiné au développement d'application web basées sur le langage PHP côté serveur.

[modifier] Langages de programmation supportés

De nombreux langages sont d'ores et déjà supportés (la plupart grâce à l'ajout de plug-ins), parmi lesquels : Java, RPG pour system I, C#, C++, C, Objective Caml, Python, Perl, Ruby, COBOL, Pascal, PHP, Javascript, XML, HTML, XUL, SQL, ActionScript, Coldfusion.

[modifier] Localisation

Des packs à télécharger [1] permettent de changer la langue de Eclipse (par défaut en anglais). Les langues supportées dans la version 3.2 sont : Allemand, Arabe, Chinois, Coréen, Danois, Espagnol, Finnois, Français, Grec, Hébreu, Hollandais, Hongrois, Italien, Japonais, Norvégien, Polonais, Portugais, Russe, Suédois, Tchèque, Turc.

[modifier] Voir aussi

[modifier] Histoire du projet

On peut remarquer la facétie d'IBM dans le choix du nom de son logiciel, sachant que le créateur de Java est Sun (en anglais : « soleil »), concurrent qu'IBM semble vouloir « éclipser ».

Les progrès d'Eclipse peuvent aussi être visualisés par une vidéo assez synthétique[1].

Date Version Commentaire
Juin 2008 (Planifié) 3.4 (Ganymede)
Juin 2007 3.3 (Europa) 21 projets. 17 millions de lignes de codes écrites par 310 développeurs répartis dans 19 pays.
Septembre 2006 3.2.1 dix projets concernés
Juin 2006 3.2 (Callisto)
Janvier 2006 3.1.2
Septembre 2005 3.1.1
Juin 2005 3.1
Mars 2005 3.0.2
Septembre 2004 3.0.1
Juin 2004 3.0
Mars 2004 2.1.3
Novembre 2003 2.1.2
Juillet 2003 2.1.1
Avril 2003 2.1
Novembre 2002 2.0.2
Septembre 2002 2.0.1
Juillet 2002 2.0
Novembre 2001 1.0

[modifier] Notes et références

  1. http://www.vimeo.com/1130828

[modifier] Liens externes