Entwicklung

Die wichtigsten Neuerungen in Eclipse Galileo

13.08.2009 von Andreas Graf und Michael Krauter
Eclipse Galileo bietet zahlreiche Neuerungen, mit denen die Akzeptanz der Open-Source-Entwicklerplattform in der Softwarebranche weiter ausgebaut wird.

Ende Juni dieses Jahres wurde unter der Bezeichnung "Galileo" die neueste Version von Eclipse veröffentlicht. Zwar handelt es sich bei Eclipse um eine Plattform, auf der ganz unterschiedliche Projekte und zahlreiche Plug-ins aufsetzen, doch seit 2005 haben sich viele Projekte in der Art zusammengeschlossen, dass ein gemeinsames jährliches Release herausgegeben wird. Dadurch können sich Anwender und Entwickler auf einen Aktualisierungszeitpunkt konzentrieren. Dies vereinfacht die Administration von Eclipse-Anwendungen und verbessert die Kompatibilität der Eclipse-Projekte untereinander. Mit Galileo wurden neue Versionen von 33 Projekten veröffentlicht.

Nicht alle Änderungen werden den Anwendern auffallen. Die grundlegende Infrastruktur Equinox von Eclipse wurde auf eine höhere Version des OSGi-Standards umgestellt, wodurch sich für die Entwickler von Eclipse-Projekten und Eclipse-basierenden Anwendungen neue Möglichkeiten in Bezug auf die Strukturierung ihrer Software ergeben.

Domänenspezifische Modellierung

Im Gegensatz dazu sorgen neu hinzugekommen Projekte für breitere Aufmerksamkeit. Im Textual Modeling Framework (TMF) findet das Open-Source-Projekt "openArchitectureWare" eine neue Heimat. Das Projekt ermöglicht auf einfache Weise die Definition von domänenspezifischen Modellierungssprachen und die Transformation dieser Modelle in abgeleitete Modelle und Code. Damit findet ein aktuell starker Trend in der Softwareentwicklung sein zu Hause bei Eclipse.

Die Möglichkeiten des Eclipse-Repositories EMF wurden erweitert. EMF stellt den grundlegenden Speichermechanismus von Eclipse bereit. Jetzt ist es möglich, den Speicherhunger der Datenbank stark zu reduzieren. Ferner wurden viele weitere kleine Verbesserungen vorgenommen. Für den Einsatz von Eclipse als Werkzeugbasis für verteiltes Arbeiten in großen Teams sind die Entwicklungen im Projekt Connected Data Objects (CDO) interessant, denn es führt unter anderem ein Authentifizierungssystem und Transaktionen ein.

Java- und C-Entwicklung

Eclipse hat eine lange Historie als Java-Entwicklungsumgebung (Java Development Tools = JDT). Entsprechend dem Reifegrad sind im Galileo-Release keine überraschenden Neuerungen enthalten. Das Vergleichswerkzeug ist mächtiger geworden und ermöglicht nun die On-the-fly-Bearbeitung, und Entwickler erhalten eine automatische Generierung der toString()-Methoden. Dafür bietet der Memory Analyzer (MAT) neue Möglichkeiten, um die Speicherstrukturen von Java-Programmen zu analysieren.

Das CDT ist die Entwicklungsumgebung für C- und C++-Programme. Hier finden sich Verbesserungen unter anderem in der Unterstützung von Makros und von überladenen Funktionen. Darüber hinaus wurde das Debugger-Framework jetzt direkt in CDT integriert. Neben Java und C/C++ werden immer mehr Entwicklungsumgebungen für weitere Sprachen mit Eclipse realisiert. So ist PDT eine Umgebung für PHP, die Sprache, mit der sehr viele Web-Anwendungen programmiert werden.

Mit Mylyn beinhaltet Eclipse ein Werkzeug, das es den Entwicklern ermöglicht, die zu bearbeitenden Aufgaben zu verwalten und in Beziehung zu Quellcode und Einträgen in Bug-Tracking-Systeme zu stellen. Hier wurde ein neuer Mechanismus eingefügt, mit dem es nun sehr einfach ist, Mylyn-Erweiterungen und Connectoren zu externen Bug-Tracking-Systemen zu finden.

Die Projekte RAP und Riena

Das Projekt RAP (Rich Ajax Platform) hat sich zum Ziel gesetzt, die Anwendungen, die auf der Eclipse-Rich-Client-Plattform aufsetzen, auch als Web 2.0-Anwendungen in Web-Browsern zum Laufen zu bringen. Hierbei werden die grafischen Benutzer-Elemente, die von Eclipse verwendet werden, als Java-Script-Elemente nachimplementiert.

Im Rahmen von Galileo hat das Projekt Riena seinen ersten reifen Stand erreicht. Riena bietet eine Plattform für die Entwicklung von verteilten Unternehmensanwendungen. Hierbei werden die Entwicklung der Benutzerschnittstelle und die Integration der Backend-Systeme stark vereinfacht. Das Herz von Riena ist eine OSGI-basierende Komponente für verteilte Dienste, mit der Entwickler leicht Client-Server-Anwendungen erstellen können.