Développons en Java avec Eclipse 0.80.1 | |
Copyright (C) 2003-2008 Jean-Michel DOUDOUX | (date de publication : 26/12/2008) |
|
Eclipse est un environnement de développement intégré (Integrated Development Environment) dont le but est de fournir une plate-forme modulaire pour permettre de réaliser des développements informatiques.
I.B.M. est à l'origine du développement d'Eclipse qui est d'ailleurs toujours le coeur de son outil Websphere Studio Workbench (WSW), lui même à la base de la famille des derniers outils de développement en Java d'I.B.M. Tout le code d'Eclipse a été donné à la communauté par I.B.M afin de poursuivre son développement.
Eclipse utilise énormément le concept de modules nommés "plug-ins" dans son architecture. D'ailleurs, hormis le noyau de la plate-forme nommé "Runtime", tout le reste de la plate-forme est développé sous la forme de plug-ins. Ce concept permet de fournir un mécanisme pour l'extension de la plate-forme et ainsi fournir la possiblité à des tiers de développer des fonctionnalités qui ne sont pas fournies en standard par Eclipse.
Les principaux modules fournis en standard avec Eclipse concernent Java mais des modules sont en cours de développement pour d'autres langages notamment C++, Cobol, mais aussi pour d'autres aspects du développement (base de données, conception avec UML, ... ). Ils sont tous développés en Java soit par le projet Eclipse soit par des tiers commerciaux ou en open source.
Les modules agissent sur des fichiers qui sont inclus dans l'espace de travail (Workspace). L'espace de travail regroupe les projets qui contiennent une arborescence de fichiers.
Bien que développé en Java, les performances à l'exécution d'Eclipse sont très bonnes car il n'utilise pas Swing pour l'interface homme-machine mais un toolkit particulier nommé SWT associé à la bibliothèque JFace. SWT (Standard Widget Toolkit) est développé en Java par IBM en utilisant au maximum les composants natifs fournis par le système d'exploitation sous jacent. JFace utilise SWT et propose une API pour faciliter le développement d'interfaces graphiques.
Eclipse ne peut donc fonctionner que sur les plate-formes pour lesquelles SWT a été porté. Ainsi, Eclipse 1.0 fonctionne uniquement sur les plate-formes Windows 98/NT/2000/XP et Linux.
SWT et JFace sont utilisés par Eclipse pour développer le plan de travail (Workbench) qui organise la structure de la plate-forme et les intéractions entre les outils et l'utilisateur. Cette structure repose sur trois concepts : la perspective, la vue et l'éditeur. La perspective regoupe des vues et des éditeurs pour offrir une vision particulière des développements. En standard, Eclipse propose huit perspectives.
Les vues permettent de visualiser et de sélectionner des éléments. Les éditeurs permettent de visualiser et de modifier le contenu d'un élement de l'espace de travail.
Eclipse possède de nombreux points forts qui sont à l'origine de son énorme succès dont les principaux sont :
Pour chaque version d'Eclipse possède un nombre plus ou moins important de types nommés "build" :
Il existe plusieurs versions de type "Release" d'Eclipse :
Date | Version |
Septembre 2006 | 3.2.1 |
Juin 2006 La liste des nouvelles fonctionnalités de la version 3.2 sur le site d'Eclipse |
3.2 |
Janvier 2006 | 3.1.2 |
Septembre 2005 | 3.1.1 |
Juin 2005 La liste des nouvelles fonctionnalités de la version 3.1 sur le site d'Eclipse |
3.1 |
Mars 2005 | 3.0.2 |
Septembre 2004 | 3.0.1 |
Juin 2004 La liste des nouvelles fonctionnalités de la version 3.0 sur le site d'Eclipse |
3.0 |
Mars 2004 | 2.1.3 |
Novembre 2003 | 2.1.2 |
Juillet 2003 | 2.1.1 |
Avril 2003 La liste des nouvelles fonctionnalités de la version 2.1 sur le site d'Eclipse |
2.1 |
Novembre 2002 | 2.0.2 |
Septembre 2002 | 2.0.1 |
Juillet 2002 | 2.0 |
Novembre 2001 | 1.0 |
Ce document couvre essentiellement les versions 2.x et 3.x d'Eclipse. Différents pictogrammes sont utilisés pour signaler des fonctionnalités apportées par une version particulière d'Eclipse :
: pour la version 2.0.x d'Eclipse | |
: pour la version 2.1.x d'Eclipse | |
: pour la version 3.0.x d'Eclipse | |
: pour la version 3.1.x d'Eclipse | |
: pour la version 3.2.x d'Eclipse |
Par défaut, les fonctionnalités décrites le sont pour la version 2.x d'Eclipse.
Le projet Eclipse est divisé en plusieurs sous projets.
Projet | Description |
Eclipse | ce projet développe l'architecture et la structure de la plate-forme Eclipse. |
Eclipse Tools | ce projet développe ou intègre des outils à la plate-forme pour permettre à des tiers d'enrichir la plate-forme. Il possède plusieurs sous projets tel que CDT (plug-in pour le developpeemnt en C/C++), AspectJ (AOP), GEF (Graphical Editing Framework ), PHP (plug-in pour le développement en PHP), Cobol (plug-in pour le développement en Cobol), VE (Visual Editor) pour la création d'IHM. |
Eclipse Technology | ce projet, divisé en trois catégories, propose d'effectuer des recherches sur des évolutions de la plate-forme et des technologies qu'elle met en oeuvre. |
Web Tools Platform (WTP) | ce projet a pour but d'enrichir la plate-forme enfin de proposer un framework et des services pour la création d'outils de développement d'applications web. Il est composé de plusieurs sous projets : WST (Web Standard Tools) , JST (J2EE Standard Tools) , ATF (Ajax Toolkit Framework), Dali (mapping avec JPA) et JSF (Java Server Faces) |
Test and Performance Tools Platform (TPTP) | ce projet a pour but de développer une plate-forme servant de support à la création d'outils de tests et d'analyses |
Business Intelligence and Reporting Tools (BIRT) | ce projet a pour but de développer une plate-forme facilitant l'intégration de générateur d'états. Il est composé de 4 sous projets : ERD (Eclipse Report Designer), WRD (Web based Report Designer), ERE (Eclipse Report Engine) et ECE (Eclipse Charting Engine). |
Eclipse Modeling | ce projet contient plusieurs sous projet dont EMF (Eclipse Modeling Framework) et UML2 pour une implémentation d'UML reposant sur EMF |
Data Tools Platform (DTP) | ce projet a pour but de manipuler des sources de données (bases de données relationnelles) |
Device Software Development Platform | ce projet a pour but de créer des plug-ins pour faciliter le développement d'applications sur appareils mobiles |
Eclipse SOA Tools Platform | ce projet a pour pour but de développer des outils pour faciliter la mise en d'architecture de type SOA |
Le but du projet Callisto est de proposer la mise à disposition simultanée d'une nouvelle version de 1O des principaux sous projets du projet Eclipse :
Callisto ne propose pas de rassembler les différents sous projets mais simplement de coordonner la diffusion d'une nouvelle version de chacun des sous projets qui possède par ailleurs leur propre cycle de vie.
Callisto facilite la vie de tous les intervenants de la communauté Java pour les développeurs de chaque sous projet, pour tiers qui propose des outils basés sur Eclipse mais aussi pour les utilisateurs d'Eclipse puisque Callisto assure une compatibilité des version des sous projets qui le compose.
Pour pouvoir utiliser calliston, il faut au préalable télécharger et installer la version 3.2 d'Eclipse sur laquelle repose Callisto. Via le gestionnaire de mise à jour, Callisto propose un site de mise à jour dédié qui permet un accès au site de mise à jour des différents sous projet qui le compose : chaque sous projet peut être téléchargé séparément. Le site "Site des recherches Callisto" est proposé par défaut par le gestionnaire de mise à jour : il permet pour chaque sous projet d'accéder aux sites mirroir.
Callisto a été diffusé à partir du 30 juin 2006.
Le prochain projet de synchronisation de la sortie de plusieurs projets simultanée porte le nom de code Europa et sera publié fin juin 2007.
|