Sortie de Eclipse 3.6 - Helios

Posté par  (site web personnel) . Modéré par baud123.
Étiquettes :
25
23
juin
2010
Technologie
Eclipse Helios arrive enfin après un an d'attente, ce 23 juin. Cette version numérotée 3.6 marque la consolidation des technologies historiquement prises en charge par Eclipse (le monde Java JEE), l'ouverture vers d'autres technologies et la confirmation en tant que projet libre d'environnement de développement intégré (IDE) le plus dynamique et le plus utilisé dans le monde.

Le travail effectué autour de cette version majeure a été important tant du point de vue de l'implémentation que du point de vue de la vie communautaire du projet, les contributeurs comme la fondation sont moteurs pour qu'Eclipse s'adapte aux nouveaux besoins et incitent à plus de contributions. Eclipse Helios en quelques chiffres

490 contributeurs Eclipse ont travaillé précisément sur cette version, dont plus de 100 sont indépendants (contre 900 contributeurs actifs), 44 sociétés sont impliquées et collaborent au sein de ce projet libre. C'est environ 33 millions de lignes de code qui sont livrées avec Eclipse Helios.

2010, l'année des mutations

Le projet Eclipse est un projet libre assez original pour de nombreuses raisons, l'une d'elle étant l'existence d'un éco-système constitué d'entreprises collaborant au sein du projet Eclipse pour construire une plate-forme complète et efficace, mais en concurrence nette par ailleurs via leurs produits commerciaux. Ce modèle centré sur les entreprises montre ses limites en période de crise économique : un grand nombre de sociétés ont réduit leur investissement dans le projet, la fondation a procédé à certaines mesures permettant de réduire les coûts de fonctionnement et les conférences telles que Eclipse Summit en Allemagne ou EclipseCon en Californie se sont faites plus modestes qu'à l'accoutumée.

Cette baisse d'investissement de certaines grosses entreprises a été contrebalancée par un plus grand engagement des contributeurs individuels, dans sa globalité Eclipse tend donc à s'aligner de plus en plus vis-à-vis des projets et des modèles économiques plus "classiques", mais cela reste encore assez anecdotique.

OSGi
OSGi est une spécification d'un environnement dynamique à base de composants, Eclipse est basé sur l'une de ses meilleures implémentations : Equinox. OSGi est de plus en plus utilisé, il est désormais à la base de nombreux serveurs d'applications, il s'agit d'un conteneur extrêmement léger qui fournit une API très simple et réduite. Malgré ces caractéristiques très alléchantes et une popularité importante, la technologie a du mal à s'imposer dans le monde des applications d'entreprises ; 2010 a marqué l'arrivée de quelques doutes, est-ce-que OSGi va réussir à passer la prochaine étape nécessaire à une adoption de masse ? Il est important de souligner que le caractère dynamique d'Equinox et cette capacité à rendre modulaire le code expliquent en grande partie comment autant de projets, gérés individuellement arrivent cependant à collaborer techniquement au sein du projet Eclipse.

GIT
Les contributeurs l'ont demandé à la fondation, cette dernière alors à la recherche d'économies a tout d'abord refusé, puis le conseil d'architecture d'Eclipse, à force de persuasion, a convaincu le comité de direction : Eclipse passera à Git. Dans un premier temps, seul un miroir Git des dépôts CVS et SVN est fourni par Eclipse mais – à échéance de 2 ans – tous les projets devraient migrer et utiliser exclusivement GIT.
Pour faciliter cette migration, l'équipe de développement du greffon eGit (gestion de Git dans l'IDE Eclipse) est extrêmement active, livre des versions régulièrement et se rapproche un peu plus à chaque fois du niveau de fonctionnalités nécessaire à une utilisation quotidienne.

Labs
Une autre remarque faite par de nombreux projets concernant Eclipse est la suivante : le processus de développement du projet Eclipse, qui garantit la propriété intellectuelle du code peut parfois sembler lourd pour un projet porté uniquement par un individu. Il est bien évidemment inconcevable de renoncer à cette qualité vis à vis des problématiques de droit d'auteur pour les projets Eclipse. Mais, pour répondre à ce besoin, la fondation a créé « Eclipse Labs » en partenariat avec Google. Il s'agit d'une version légèrement modifiée de Google Code qui apporte des facilités pour distribuer des mises à jour de projets via le site Eclipse. Créer un projet sur Eclipse Labs ne requiert que quelques clics et permet de bénéficier de l'aura du projet Eclipse lui-même.

MarketPlace
Autre nouveauté cette année : le MarketPlace. Il s'agit d'un site référençant les greffons compatibles Eclipse, qu'ils soient libres ou propriétaires (le site s'appelait auparavant Eclipse Plugins Central). En plus de cette refonte du site, un client riche est intégré à toutes les distributions Eclipse et permet en quelques clics de découvrir et d'installer n'importe quel greffon.

Tendances

La fondation Eclipse réalise un sondage annuel permettant d'identifier les grandes tendances parmi les utilisations d'Eclipse, certains résultats sont particulièrement intéressants cette année :
  • GNU Linux est de plus en plus utilisé comme système d'exploitation pour les développeurs, de 20% des développeurs en 2007, il est passé à 33% , grignotant ainsi, avec Mac OS X qui passe de 3,5 à 7,9%, les parts de marché de Microsoft Windows.
  • OpenJDK est de plus en plus utilisé avec 21,7%, HotSpot de Sun/Oracle étant lui à 68,8%.
  • Les utilisateurs d'Eclipse suivent de près les montées de versions, 75,5% des personnes interrogées utilisaient Eclipse Galileo, dernière version stable sortie.
  • La participation générale au libre stagne, la proportion de personnes déclarant que leur entreprise les autoriserait à contribuer à un projet Libre est passée de 48% en 2009 à 35,4% en 2010, il est difficile d'analyser cette tendances mais elle semble relativement inquiétante.


La livraison simultanée

Eclipse représente à l'heure actuelle des centaines de développeurs, divisés en de nombreux projets et sous-projets, visant des publics aussi variés que le monde de la programmation système ou embarquée, le développement web, les clients riches ou les serveurs d'applications. Tout ce petit monde gère son propre projet en fonction de ses priorités, tout en se conformant au processus de développement Eclipse.

Évidement cette diversité complique la vie des utilisateurs ; pour remédier à ce problème, Eclipse fournit une livraison simultanée de nombreux composants tous les ans en juin depuis maintenant quelques années, cette année c'est Helios. Les composants souhaitant faire partie de cette livraison expriment leur souhait dès le mois d'octobre puis s'alignent sur un calendrier commun de livraisons avec des jalons intermédiaires.

Un certain nombre de contraintes sont ajoutées au processus classique de développement Eclipse pour s'assurer que les projets livrés sont de la meilleure qualité possible. Ces contraintes concernent, par exemple, la possible localisation du code, l'utilisation exclusive des API des autres composants ou encore la communication claire d'une feuille de route pour le projet. C'est le « Planning Council » d'Eclipse qui a la responsabilité d'organiser cette livraison simultanée. Il est constitué de représentants de tous les projets racines et de représentants des membres stratégiques de la fondation Eclipse et se réunit tous les mois. C'est par ce suivi régulier que le projet réussit, chaque année depuis 5 ans, à livrer en temps et en heure.

Quoi de neuf dans cette version ?

Voici quelques points marquants de cette version, évidemment il ne s'agit pas d'une liste exhaustive :
  • Une nouvelle distribution dédiée à Linux a été créée. Elle intègre une chaîne d'outils pour créer des applications C/C++ pour les systèmes d'exploitation GNU/Linux et permet d'exploiter Autotools, Valgrind, OProfile, RPM, SystemTap, GCov, GProf et LTTng directement depuis votre IDE préféré ;)
  • La prise en charge de Git, qui fournit désormais une nouvelle vue pour naviguer dans les dépôts, permet la fusion rapide et la création d'étiquettes.
  • Le projet Web Tools Platform a ajouté la prise en charge d'applications écrites pour la dernière version des spécifications Java EE (Java EE 6) incluant les Servlets 3.0, JPA 2.0, JSF 2.0 et EJB 3.1.
  • Une meilleure gestion du développement JavaScript par le biais du projet JSDT, un framework de debuggage permettant l'intégration de Rhino et Firebug, et une nouvelle distribution dédiée au développement de Java-Script.
  • Acceleo, auparavant indépendant d'Eclipse a désormais intégré le projet libre et livre sa première version stable créée sur Eclipse.org : la version 3.0. Cet outil permettant de définir des générateurs de code a été complètement réécrit ce qui a permis d'atteindre des performances très intéressantes et des fonctionnalités inédites : le refactoring des templates de génération, la capacité de lancer un générateur en tant qu'application Java (voire en ligne de commande), une auto-complétion proche de la perfection, l'initialisation d'un template à partir d'exemples de code et enfin tout cela de manière conforme au standard MTL définit par l'OMG.
  • Le projet Eclipse Modeling, très actif comme chaque année fournit également quelques nouveautés : une distribution allégée incluant la comparaison de modèles, la modélisation graphique de modèles Ecore (formalisme proche du diagramme de classe UML) complétée par une interface utilisateur permettant d'étendre la distribution en un clic. EEF, jeune projet reposant sur Acceleo permet de générer des interfaces de clients riches et a lancé à l'échelle de la communauté Eclipse, un jeu de pronostics pour la coupe du monde exploitant un client développé à titre d'exemple. Le framework xText qui permet de définir son propre langage s'est vu largement amélioré, depuis une définition de langage il génère toute l'infrastructure nécessaire pour Eclipse de la compilation jusqu'aux éditeurs.
Et après ?

Cette année livraison 2010 montre bien à quel point le projet est capable de se remettre en cause et d'évoluer, cette version 3.6 sera suivie de 2 livraisons de maintenance, une en automne et une à l'hiver suivant, mais tout le monde regarde déjà vers 3.7, Eclipse Indigo. Elle devrait marquer la convergence vers les technologies développées au sein de l'incubateur e4 qui reposent très largement sur EMF, brique centrale de Modeling commiter.

Aller plus loin

  • # je chipote mais

    Posté par  (site web personnel) . Évalué à 6.

    c'est JavaScript et pas Java-Script ...
    sinon ça renforce la confusion entre java et js ...

    Merci pr la news
  • # Quelques corrections

    Posté par  . Évalué à 2.

    Merci pour cette très jolie news bien détaillée.

    Voici quelques erreurs à corriger afin de la peaufiner :

    s/évidement/évidemment/
    s/les projet Eclipse/les projets Eclipse/
    s/des mises à jours/des mises à jour/
    s/prise en charge d'application écrites/prise en charge d'applications écrites/
    s/les Servelt/les Servlets/
    s/Java-script/JavaScript/g
    s/ré-écrit/réécrit|récrit/
    s/un jeu de pronostic/un jeu de pronostics/
    s/brique centrale Modeling.commiter/brique centrale de Modeling commiter./
  • # Merci

    Posté par  . Évalué à 3.

    Très bonne news. Merci bcp!
    Eclipse est vraiment un excellent éditeur. Et la concurrence avec Netbeans fait que les projets sont très actifs et s'améliorent grandement au fil du temps.
    La seule chose que je pourrai lui reprocher est la "lourdeur" en conso mémoire. Je met entre guillemet car bon je sais bien qu'on ne peut pas avoir des fonctionnalités avancées et pléthoriques et d'avoir en même temps une empreinte mémoire minimale.
    • [^] # Re: Merci

      Posté par  . Évalué à 4.


      je sais bien qu'on ne peut pas avoir des fonctionnalités avancées et pléthoriques et d'avoir en même temps une empreinte mémoire minimale.


      Et Emacs, c'est du poulet ?
      Ok c'est du C/Lisp, ceci explique cela...
      • [^] # Re: Merci

        Posté par  (site web personnel) . Évalué à 4.

        juxtaposer emacs et empreinte mémoire minimale ("eight megabytes almost continuously swapping") montre quand même une incroyable évolution dans l'informatique de ces dernières années.
        • [^] # Re: Merci

          Posté par  . Évalué à 4.

          heureusement, avec OpenOffice tu peux retrouver exactement les mêmes sensations - et un firewall intégré en prime !
  • # intéressant

    Posté par  (site web personnel) . Évalué à -1.

    intéressant, j'ai pu tester des night build depuis un moment

    j'utilise au quotidien eclipse, il fait beaucoup mais je le trouve très très lourd

    pour d'autre projet j'ai pu utiliser netbeans et il y a clairement une différence incroyable entre les deux niveau ressources

    qu'eclipse est plus de plugin ok..., mais habituellement tous les plus "gros" sont aussi disponible sur netbeans

    bon en entendant, mon projet actuel utilise eclipse :(

    www.solutions-norenda.com

  • # MarketPlace

    Posté par  . Évalué à 1.

    Le MarketPlace est vraiment une fonctionnalité intéressante qui permet d'installer les plugins beaucoup plus facilement qu'avant (par exemple Subversion). Par contre il n'est pas présent dans la version classique (Linux 64 bits), est-ce normal ?
    • [^] # Re: MarketPlace

      Posté par  (site web personnel) . Évalué à 1.

      Les mainteneurs de "Classic" (l'équipe platform) n'a pas souhaitée l'intégrer. Globalement il est très intéressant de partir du bundle le plus proche de son domaine, "Classic" reste là pour des raisons historiques ;)
      • [^] # Re: MarketPlace

        Posté par  (site web personnel) . Évalué à 1.

        Eh bien j'espère qu'elle restera longtemps, parce qu'autant j'apprécie Eclipse (même s'il n'est pas parfait), autant tous les autres bundles sont farcis de bloat (oui oui, du bloat, même comparé à Eclipse). Classic + les quelques plugins dont on a vraiment besoin = miam.
        • [^] # Re: MarketPlace

          Posté par  (site web personnel) . Évalué à 1.

          Pourtant dans Classic y'a tous les SDK de la plateforme, si tu ne développes pas de plugins Eclipse c'est typiquement des trucs qui ne te serviront à rien. Autant partir de la platforme directement : http://download.eclipse.org/eclipse/downloads/
          • [^] # Re: MarketPlace

            Posté par  (site web personnel) . Évalué à 1.

            Ah merci, c'est à creuser en effet :-) Si y a plus léger que Classic, et dépourvu des plugins pouet-pouet « quand j'ouvre une classe c'est automatiquement reporté dans 12 bugtrackers et j'ai 3 interfaces SWT/AWT/chose qui sont générées à la volée (et donc ma classe est effectivement ouverte au bout 5 minutes) » ça peut intéresser du monde :-)
            • [^] # Re: MarketPlace

              Posté par  (site web personnel) . Évalué à 2.

              En fait Eclipse - la platforme et Equinox - le runtime sont plutôt légers, c'est les plugins qu'on ajoute qui peuvent ralentir le tout si ils ne font pas particulièrement attention. Un google summer of code a été proposé cette année pour faire un "bootchart" du démarrage d'Eclipse mais il n'est malheureusement pas passé :/

              Construire une distro dédiée à cette légèreté pourrait être un projet intéressant, c'est une critique que l'on entend régulièrement...
  • # New and Noteworthy

    Posté par  . Évalué à 2.

    Il faut parfois farfouiller un peu pour trouver la liste des nouveautés. Voici donc les nouveautés concernant :

    La plate-forme [http://download.eclipse.org/eclipse/downloads/drops/R-3.6-20(...)] et ses API [http://download.eclipse.org/eclipse/downloads/drops/R-3.6-20(...)],
    l'environnement de développement Java [http://download.eclipse.org/eclipse/downloads/drops/R-3.6-20(...)],
    et l'environnement de développement de plug-ins [http://download.eclipse.org/eclipse/downloads/drops/R-3.6-20(...)].
  • # quelques problemes

    Posté par  . Évalué à 2.

    eviter de prendre la version C/C++. Cette version a des problemes a trouve certains modules necessaires a l'installation de certains plugins. Par exemple je n'ai pas pu installer pydev, wikitext etc avec mais avec la version pour java tout c'est bien passe.
    • [^] # Re: quelques problemes

      Posté par  . Évalué à 1.

      Même symptômes ... Pour installer pydev avec la version C/C++ décocher l'option :
      "Contact all update sites during install to find required software"

      et ça marche...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.