Open Source im professionellen Einsatz
Linux-Magazin 09/2015
© Sergey Drozdov, 123RF

© Sergey Drozdov, 123RF

Auf welchen Gebieten Eclipse besonders viel Effizienz verspricht

Eignungstest

Wer beim Entwickeln fit ist und mit seinen Projekten hoch hinaus will, tut gut dran, sein Equipment zu checken. Eclipse ist nicht zufällig der Generalausrüster vieler ambitionierter Open-Source-Missionen. In manchen Welten jedoch schrammt die IDE nur knapp am Prädikat "Schrott" vorbei.

950

Ohne die Bedeutung der Fixsterne Emacs und VI mindern zu wollen, deren Kernbrennstoff wohl noch mehrere Milliarden Jahre reicht, lässt sich leicht feststellen, dass Eclipse die Art, wie Software entwickelt wird, zum Positiven verändert hat. Für das Java-Ökosystem, doch nicht nur dort, hat Eclipse immer wieder wichtige Impulse und Unterstützung gegeben und tut dies weiter [1].

Die Eclipse-Stiftung stellt eine gute finanzielle Basis, stabile Prozesse und Regeln bereit, mit deren Hilfe die große Entwickler-Community an verschiedenen Projekten und Produkten arbeitet. Diese sind offen und attraktiv für neue Teilnehmer und Projekte. Neue innovative Projekte, etwa Oomph, Open HAB oder Vert.x, finden stets ein trockenes Plätzchen unter dem Eclipse-Dach.

Der Eclipse-Marktplatz als Drehscheibe für Erweiterungen besitzt eine schnelle Suchfunktion und macht es einfach, die zur eigenen Eclipse-Version passenden Plugins herunterzuladen. Wer mehrere Eclipse-Installationen parallel betreibt, kann seine Plugins auch als archivierte Update-Sites [2] separat herunterladen und gesondert von den jeweiligen Eclipse-Versionen entpacken. Die Update-Sites lassen sich separat integrieren, sodass die Eclipse-Installationen sauber von Zusatz-Plugins getrennt bleiben. Das wirkt sich positiv auf die Startzeit aus und hilft Fehler, die durch miteinander unverträgliche Plugins entstehen, leichter zu isolieren und zu beheben.

Da heute die IDE bereits für die unterschiedlichen Anforderungen Varianten für Java EE, PHP, C++ oder Berichtsentwickler schnürt (siehe Eclipse-Mars-Artikel), haben Anwender die meisten Funktionen sofort im Zugriff, ohne dass sie den Eclipse Marketplace aufsuchen müssten. Ihre Umgebungen aktualisieren sich über die serienmäßige Updatefunktion übers Internet selbstständig. Ähnlich wie bei der Plugin-Installation müssen sie nach einem Update die IDE neu starten, damit die Änderungen wirksam werden.

Kaffeekränzchen

Trotz aller Vielfalt kann Eclipse seine Herkunft als Java-IDE nicht ganz vergessen machen (siehe Kasten "Kosmisches Streben"), denn das Entwickeln von Java-EE-7-Anwendungen geht besonders leicht von der Hand. Experimentierfreudige haben per Plugin sogar die Gelegenheit, mit der für nächstes Jahr geplanten Java-SE-Version 9 zu arbeiten. Bei den beiden großen Anbietern Pivotal Spring [3] und Red Hat Jboss [4] ist das Engagement am spürbarsten. Jboss hat sich besonders hervorgetan, die früher mangelhafte Unterstützung fürs Schreiben von mobilen und modernen Webanwendungen zu verbessern.

Google dagegen scheint in erster Linie Eigeninteressen zu verfolgen: Anfänglich war lange Zeit Eclipse als Tool für Android-Apps gesetzt, da Google hierfür die ADT (Android Developer Tools) als Eclipse-Plugin kostenlos anbot. Dann aber schwenkte die Android-Firma zum direkten Eclipse-Konkurrenten Intelli J Idea um und bietet seither Android Studio nur noch für diesen an.

Kosmisches Streben

Um einen Nachfolger für seine Entwicklungsumgebung Visual Age for Java zu entwickeln, begann unter IBMs Federführung vor 14 Jahren die Entwicklung an Eclipse unter einer eigenen freien Lizenz, der Eclipse Public License (EPL), einer leicht abgeänderte Version der Common Public License (CPL). Vor allem die drei Jahre später gegründete Eclipse-Stiftung schuf einen Rahmen, Infrastruktur und Prozesse, sodass sich Eclipse als wachsende Community erwies, mit einem eigenen Ökosystem aus Konferenzen und Firmen, die eigene Erweiterungen entwickeln, sowie Dienstleistern, die Support, Training oder Beratung anbieten.

Mit Eclipse 3.0 entstand das Plugin-Konzept, welches das eigene OSGi-Framework Equinox verwendet. Größere Umbauten, die leider auch zu Performance-Einbußen und Instabilitäten führten, betrafen die Juno-Release. (Der interne Projektname für eine Eclipse-Release hat seit 3.2 (Callisto) immer etwas mit Jupitermonden, Raumsonden, Astronomen oder Planeten zu tun.) Juno führte eine Kompatibilitätsschicht ein, um auch in der neuen Version 4.2 alte und neue Plugins parallel verwenden zu können. Mit der nächsten Release 4.3 (Kepler) stellten die Eclipse-Projekte vom CVS-Versionssystem auf das modernere Git um.

Alles im Rahmen

Um Eclipse eine plattformübergreifende moderne Oberfläche zu verpassen, schuf IBM mit dem Standard Widget Toolkit (SWT) ein eigenes natives Oberflächen-Framework. Nachdem sich das GUI-Standardframework Swing nie auf dem Desktop durchgesetzt hat, erlangte SWT eine größere Verbreitung – auch ohne die IDE – mit dem Rich Client Platform (RCP) Project, zumindest bei einigen Java-Anwendungen. Mit der Remote Application Platform (RAP) ist es sogar möglich, SWT-Oberflächen in einem Browser laufen zu lassen, ohne sich mit eigener Javascript-Programmierung oder Ajax-Kommunikation beschäftigen zu müssen.

Mit dem Visual Editor und später dem Window Builder [7] gab es zwei Versuche, Wysiwig-Editoren für grafische Anwendungsoberflächen mit AWT/Swing, SWT/Jface und GWT bereitzustellen (Abbildung 1). Der Window Builder zumindest steht auch für die aktuelle Mars-Version bereit. Wer lieber die von Java inzwischen favorisierte Java-FX-Oberflächen-Technologie verwenden möchte, wird bei dem externen Projekt E(fx)clipse [8] fündig.

Abbildung 1: Der Window Builder hilft beim Entwerfen grafische Oberflächen – auch in Eclipse Mars.

Viele Trabanten

Inzwischen enthält Eclipse mit Vert.x eine Programmiersprache sowie Webserver (Jetty, Virgo), MQTT-Server (Mosquitto, Moquette), Frameworks (Eclipse Link) und OSGi-Ablaufumgebungen ([5], Equinox, Gemini Blueprint). Besonders hervorzuheben sind die Entwicklungsplattform Orion, die komplett im Web läuft, und das Plugin Development Environment (PDE), das als Teil der IDE hilft Plugin-Erweiterungen zu schreiben. PDE ist einer der Gründe, warum Eclipse bei OSGi-Projekten, namentlich für Embedded-Systeme, oft gesetzt ist.

Apropos Embedded: Für den Industriebereich (Automobil- und Flugzeugbau) gibt es eigene Eclipse-IDE-Pakete zum Herunterladen. Fürs Programmieren am Internet der Dinge (IoT) haben sich einige Projekte [6] gebildet, etwa das auf dem Open-HAB-Framework (Open Home Automation Bus) fußende Smarthome-Projekt für die Heimautomation, der MQTT-Messaging-Server Mosquitto samt Client Paho sowie Californium (Cf) als Implementierung des Constrained Application Protocol (CoAP) oder Kura als OSGi-basierter Service-Gateway.

Bei so viel Licht und dem Namen "Finsternis" fragt sich der Chronist, wo wohl die dunkle Seite lauert, aber es gibt sie: Bei der Arbeit mit modernen Webframeworks und Webstandards wie HTML 5, CSS 3, Less/Sass bleiben Eclipse-Anwender weit hinter dem zurück, was sie benötigen und Werkzeuge der Konkurrenz ganz selbstverständlich anbieten.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 2 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Himmlisch: Eclipse

    Eine Eklipse entsteht, wenn sich ein Himmelkörper so vor den anderen schiebt, dass es richtig finster wird. Dies ist ein seltsamer Name für ein Projekt, das allen Grund zum Strahlen hat. Das Linux-Magazin versucht eine galaktische Neuvermessung des Phänomens.

  • Ganymede-Release von Eclipse

    18 Millionen Zeilen Code in 23 Projekten: Die Eclipse Foundation hat gemäß ihrem jährlichen Release-Zyklus die offene Entwicklungsplattform "Eclipse Ganymede" veröffentlicht

  • Eclipse

    Eclipse bedeutet Finsternis, auch Niedergang oder "in den Schatten stellen". Finster sieht es für die IDE mit ihrem intergalaktisch guten Plugin-Konzept sicherlich nicht aus. Und vom Niedergang bedroht sind eher andere Entwicklungsumgebungen, die Eclipse in den Schatten stellt.

  • Freundlicheres Wesen

    Eclipse sieht sich mit über 60 Prozent als meistbenutzte Java-IDE. Die vom Kern abgespaltene Rich Client Platform (RCP) würden die Verantwortlichen den Entwicklern gerne im gleichen Maß näher bringen, vor allem aber schneller als Microsoft das Dotnet-API.

  • Eclipse SDK 4.0 ist erhältlich

    Die jetzt veröffentlichte Eclipse-Version 4.0 richtet sich an die "Early Adopter" der Eclipse- und Plugin-Entwickler.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.