Architecture
La base de cet environnement de développement intégré est l'Eclipse Platform qui est composée :
- 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.
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.
Langages de programmation supportés [modifier]
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.
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.
Voir aussi
Anecdote
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 ».
Liens externes
|