Mehr Flexibilität durch Eclipse 4

06.02.2013

eclipse-juno-logoEclipse ist den Meisten als Integrierte Entwicklungsumgebung (IDE) für Java bekannt. Mit einem Marktanteil von über 65% stellt sie heute die führende Entwicklungsumgebung für Java dar. Doch Eclipse ist weitaus mehr als das.

Seit dem Release der Version 3.0 im Jahr 2004 unterstützt Eclipse die Wiederverwendung seiner Platform für das Erzeugen von Stand-Alone-Applikationen, bekannt unter der Bezeichnung RCP (Rich Client Platform). Eclipse 4 ist die nächste Generation der Platform für das Entwickeln Eclipse basierter Anwendungen. Bei doubleSlash setzen wir Eclipse 4 bereits seit 2011 in einem Projekt für unseren Kunden BMW ein.

Das Entwickeln von Softwareapplikationen auf Basis von Eclipse hat sehr viele Vorteile. Eine der Kernkomponenten der Eclipse Platform ist die OSGI-Implementierung Equinox. Sie ermöglicht die Entwicklung und Ausführung modularer Eclipse Applikationen unter dem Einsatz von Plug-ins. Des Weiteren verwendet die Eclipse Platform native User-Interface-Komponenten, die stabil und zuverlässig sind. Große Unternehmen wie IBM und Google verwenden die Eclipse Platform für ihre Produkte und stellen dadurch sicher, dass die Platform flexibel und schnell bleibt und sich weiterentwickelt.

Das Application Model

Eclipse 4 entstammt dem Inkubatorprojekt Eclipse E4, einem Projekt zur Verbesserung der Eclipse Platform. Es rationalisiert die besten Teile der 3.x APIs und löst gleichzeitig viele bekannte Probleme der RCP Entwicklung mit Eclipse 3.x.
In Eclipse 4 wird die Struktur einer Applikation über ein abstraktes Modell beschrieben, dem Application Model. Dieses beinhaltet sowohl die visuellen Elemente (z.B. Windows und Parts) als auch die nicht visuellen Elemente (z.B. Commands und Handler) der Anwendung. Das Application Model kann sowohl deklarativ während der Entwicklung, als auch während der Laufzeit verändert werden. Außerdem ist es möglich, das Model über Fragmente zu erweitern, die über Plug-ins hinzugefügt werden.

Neue Technologien

Eclipse 4 führt zudem neue Technologien ein, welche die RCP Entwicklung deutlich flexibler machen. Dies sind unter Anderem die Unterstützung von Dependency Injection und die Realisierung von API Definitionen über Annotations. Bei Eclipse 3.x müssen Komponenten wie Handler bestimmte Interfaces implementieren oder von abstrakten Klassen ableiten um ein gewünschtes Verhalten des Frameworks zu indizieren. Das koppelt die entsprechenden Klassen eng an das Framework und erschwert unter Anderem das framework-unabhängige Testen dieser. In Eclipse E4 werden API Definitionen durch Annotationen umgesetzt. Dadurch können z.B. Handler-Klassen als POJOs (Plain Old Java Object) realisiert und damit unabhängig getestet werden.

Einfache UI-Erstellung

Eclipse 4 ermöglicht außerdem das Stylen von UI-Widgets unter Einsatz von CSS. Ähnlich wie bei Webseiten kann so das Aussehen einer Applikation durch Austauschen der CSS-Dateien individuell angepasst werden, ohne dass der Quellcode der Applikation von Anpassungen betroffen ist. Dies kann auch während der Laufzeit passieren.
Eine weitere revolutionäre Verbesserung in Eclipse 4 ist die Entkopplung des Application Models von seiner Präsentationsschicht. Während Eclipse 3.x fest an SWT gebunden ist, sind unter Eclipse 4 andere UI-Toolkits wie z.B. Swing oder JavaFX zum Rendern der Oberfläche möglich.

Da Eclipse 4 ein anderes Programmiermodell verwendet als Eclipse 3.x, sind Eclipse 4 Applikationen nicht abwärtskompatibel. Die Eclipse 4 Platform stellt jedoch das sogenannte Compatibility Layer zur Verfügung. Hierbei handelt es sich um eine Komponente, welche die Schnittstellen der 3.x API auf die 4.0 API mappt und dadurch eine Verwendung von 3.x basierten Komponenten unter Eclipse 4 ohne jegliche Anpassungen ermöglicht.

Die aktuelle Version 4.2 von Eclipse 4 wurde im Juni 2012 unter dem Namen „Juno“ released. Eclipse 4 löst mit diesem Release Eclipse 3.x als Mainstream Platform für das Eclipse Projekt ab. Gebunden an den Eclipse Release Train kann auch in den kommenden Jahren jeweils im Juni mit dem Release der neuesten Version der Platform gerechnet werden. Damit ist sichergestellt, dass  Eclipse 4 auch in Zukunft eine stabile und etablierte Platform zur Entwicklung modularer Anwendungen sein wird.

Zurück zur Übersicht

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*Pflichtfelder

*