Eclipse (logiciel)

Restez toujours informé : suivez-nous sur Google (☆)

Introduction

Eclipse
Eclipse33 Ubuntu.png

Capture d'écran d'Eclipse 3.3 sous Ubuntu
DéveloppeurEclipse Foundation
Dernière version3.6 Helios
EnvironnementsPlateforme Java
LanguesMultilingue
TypeIDE
LicenceEPL
Site Webwww.eclipse.org

Eclipse est un environnement de développement intégré libre extensible, universel et polyvalent, permettant 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 plugin (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.

Architecture

La base de cet environnement de développement intégré est l'Eclipse Platform, 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, la dernière couche graphique permettant de manipuler des composants, tels que des vues, des éditeurs et 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 plugins, regroupés dans le projet Java Development Tools (JDT). Ces plugins sont architecturés selon les recommandations de OSGi.

Projets Eclipse

Projets de la Fondation Eclipse

Liste exhaustive accessible depuis le site eclipse.org

  • Eclipse Project le projet fondateur comprenant Eclipse Platform, Eclipse RCP (RCP) et le JDT (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 (EMF) la partie modèle du design pattern MVC (le framework propose un visuel pour représenter le model nommé "ecorediag" qui reprend le visuel d'un diagramme de classe UML). Le modèle 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. EMF gère la persistance sous forme de plusieurs fichiers ressources reliées. (EMF)
  • Graphical Editing Framework (GEF) est un environnement pour le développement de visuels graphiques (la partie vue du MVC et un support de la partie contrôleur) avec abstraction totale du modèle mais possibilité de le modifier via une infrastructure qui organise une série d'implémentations du pattern Command. Cette infrastructure est aussi utilisée pour le fonctionnement interne de GEF (GEF)
  • Graphical Modeling Framework, venu historiquement après GEF et EMF, relie les deux frameworks. Il remplace 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)
  • PHP Development Tools framework (PDT) est destiné au développement d'application web basées sur le langage PHP côté serveur.
  • Java Workflow Tooling (JWT) est un ensemble d'outils destinés à faciliter le développement et l'utilisation de workflows.

Autres projets

Une liste plus complète et à jour peut être trouvée sur le site Eclipse plug-in central. Cependant, on ne peut dresser une liste exhaustive de projets ou d'extensions d'Eclipse car l'écosystème autour d'Eclipse est très actif.

Langages de programmation gérés

De nombreux langages sont supportés en 2008 (la plupart grâce à l'ajout de plugins), parmi lesquels :

Internationalisation/Traduction

Il est possible de traduire Eclipse dans de nombreuses langues via des packs:

  • NLpack1 : Allemand, Français, Italien, Japonais, Coréen, Portugais (Brésil),Chinois Traditionnel et Simplifié.
  • NLpack2 : Tchèque, Hongrois, Polonais et Russe.
  • NLpack2a : Danois, Hollandais, Finlandais, Grec, Norvégien, Portugais, Suédois et Turc.
  • NLpackBidi : Arabe et Hébreu.

En utilisant le service de mise à jour d'Eclipse :

le projet BABEL est un plug-in s'occupe des traductions, on l'ajoute ainsi : aide(help) > Install New Software ... > ajouter (add)

Il y a 2 informations à renseigner :

  1. Le nom, je propose : Traduction ( projet babel )
  2. L'url, là cela dépend de votre version d'Eclipse, pour galileo : https://download.eclipse.org/technology/babel/update-site/galileo

Histoire du projet

Eclipse est un environnement de développement libre. Le projet a été initié par IBM pour remplacer, en utilisant Java, l'IDE Visual Age, basé sur Smalltalk. Dès l'origine du projet, IBM a voulu offrir une solution multi-plate-forme, pouvant être exécutée sur les différents systèmes d'exploitation de ses clients. De même le projet s'est voulu extensible par le biais de plugins. En novembre 2001, Eclipse, en tant que logiciel libre, voit le jour, porté par un regroupement de sociétés. La fondation Eclipse est constituée en janvier 2004 afin d'assurer son développement.

Le nom serait un jeu de mots : le créateur de Java est Sun (en français : « soleil »), concurrent qu'IBM semble vouloir « éclipser ».

Les progrès d'Eclipse peuvent être observés dans une vidéo relativement synthétique.

En juin 2007, parait la version 3.3 appelée Europa. 310 développeurs répartis dans 19 pays ont écrit les 17 millions de lignes de codes qui la compose. Cette version porte officiellement 21 projets.

La version 3.5 appelée Galileo, parue en juin 2009 porte en outre cette fois-ci 33 projets internes allant de modélisation à l'analyse des performances. Plus de 380 membres appartenant à 44 organisations différentes ont contribué à l'élaboration de cette version comportant 24 millions de lignes de code. Six versions de test et d'évaluation, appelées Milestone étaient déjà parues, la première en août 2008, la seconde en Septembre 2008, puis Novembre 2008 et Décembre 2008 et enfin la dernière en Février 2009 puis Mars 2009.

La version 3.6, appelée Helios, sortie en juin 2010, est déclinée en 12 paquetages, selon les usages pour le développement (C/C, JavaScript, PHP,...). Elle s'appuie sur 77 projets . Les principales évolutions relevées comprennent  : un nouveau paquetage adapté au développement en C/C) dans l'environnement système d'exploitation Linux, une nouvelle gestion des plugins, le support de Git, le support des dernières évolutions Java (dont Servlet 3.0, JPA 2.0, JSF 2.0,EJB 3.1), une amélioration du support JavaScript (en mettant en place un cadre pour intégrer des débogueurs tels que Rhino ou Firebug), Eclipse Xtext 1.0, (environnement pour créer des langages spécifiques -domain specific languages, DSL-), une nouvelle version de Acceleo 3.0 (OMG Model-to-text -MTL-).

La prochaine version annuelle, appelée Indigo, est attendue en juin 2011. Elle s'inscrira dans le plan de développement (Release) suivi depuis juin 2007, qui prévoit une version annuelle en juin et deux versions intermédiaires, positionnées en septembre et février.

DateVersionCommentaire
23 Juin 20103.6 (Helios)77 projets.
24 Juin 20093.5 (Galileo)33 projets.
Février 20093.4.2
Septembre 20083.4.1
Juin 20083.4 (Ganymede)
Juin 20073.3 (Europa)21 projets. 17 millions de lignes de codes écrites par 310 développeurs répartis dans 19 pays.
Septembre 20063.2.1dix projets concernés
Juin 20063.2 (Callisto)
Janvier 20063.1.2
Septembre 20053.1.1
Juin 20053.1
Mars 20053.0.2
Septembre 20043.0.1
Juin 20043.0
Mars 20042.1.3
Novembre 20032.1.2
Juillet 20032.1.1
Avril 20032.1
Novembre 20022.0.2
Septembre 20022.0.1
Juillet 20022.0
Novembre 20011.0

Releases

ReleaseDateVersion de la plateformeProjects
Eclipse 3.028 juin 20043.0
Eclipse 3.128 juin 20053.1
Callisto30 juin 20063.2Projets Callisto
Europa29 juin 20073.3Projets Europa
Ganymede25 juin 20083.4Projets Ganymede
Galileo24 juin 20093.5Projets Galileo
Helios23 juin 20103.6Projets Helios