IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

 

Développons en Java avec Eclipse   0.80.1  
Copyright (C) 2003-2008 Jean-Michel DOUDOUX    (date de publication : 26/12/2008)

[ Précédent ] [ Sommaire ] [ Suivant ] [Télécharger ]      [Accueil ]

 

1. Introduction

 

chapitre   1

 

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.

 

1.1. Les points forts d'Eclipse

Eclipse possède de nombreux points forts qui sont à l'origine de son énorme succès dont les principaux sont :

  • Une plate-forme ouverte pour le développement d'applications et extensible grâce à un mécanisme de plug-ins
  • Plusieurs versions d'un même plug-in peuvent cohabiter sur une même plate-forme.
  • Un support multi langage grâce à des plug-ins dédiés : Cobol, C, PHP, C# , ...
  • Support de plusieurs plate-formes d'exécution : Windows, Linux, Mac OS X, ...
  • Malgré son écriture en Java, Eclipse est très rapide à l'exécution grâce à l'utilisation de la bibliothèque SWT
  • Les nombreuses fonctionnalités de développement proposées par le JDT (refactoring très puissant, complétion de code, nombreux assistants, ...)
  • Une ergonomie entièrement configurable qui propose selon les activités à réaliser différentes « perspectives »
  • Un historique local des dernière modifications
  • La construction incrémentale des projets Java grâce à son propre compilateur qui permet en plus de compiler le code même avec des erreurs, de générer des messages d'erreurs personnalisés, de sélectionner la cible (java 1.3 ou 1.4) et de mettre en oeuvre le scrapbook (permet des tests de code à la volée)
  • Une exécution des applications dans une JVM dédiée sélectionnable avec possibilité d'utiliser un débogueur complet (points d'arrêts conditionnels, visualiser et modifier des variables, évaluation d'expression dans le contexte d'exécution, changement du code à chaud avec l'utilisation d'une JVM 1.4, ...)
  • Propose le nécessaire pour développer de nouveaux plug-ins
  • Possibilité d'utiliser des outils open source : CVS, Ant, Junit
  • La plate-forme est entièrement internationalisée dans une dizaine de langue sous la forme d'un plug-in téléchargeable séparément
  • Le gestionnaire de mise à jour permet de télécharger de nouveaux plug-ins ou nouvelles versions d'un plug-in déjà installées à partir de sites web dédiés (Eclipse 2.0).
  • ...

 

1.2. Les différentes versions d'Eclipse

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.

 

1.3. Les différents sous projets 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

 

 

1.4. Callisto

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.

 

 


[ Précédent ] [ Sommaire ] [ Suivant ] [Télécharger ]      [Accueil ]

Copyright (C) 2003-2008 Jean-Michel DOUDOUX. Vous pouvez copier, redistribuer et/ou modifier ce document selon les termes de la Licence de Documentation Libre GNU, Version 1.1 ou toute autre version ultérieure publiée par la Free Software Foundation; les Sections Invariantes étant constitués du chapitre Préambule, aucun Texte de Première de Couverture, et aucun Texte de Quatrième de Couverture. Une copie de la licence est incluse dans la section GNU FreeDocumentation Licence. La version la plus récente de cette licence est disponible à l'adresse : GNU Free Documentation Licence.