MicroAbstract4: Software-Entwicklung mit Eclipse

Software-Entwickler und -Produzenten sind in Zeiten von verteilter Entwicklung, beispielsweise durch Outsourcing ins Ausland oder durch Multi-Plattform-Projekte auf ein zuverlässiges und durchdachtes Entwicklungs-Instrument angewiesen. Für zahlreiche lokalen Tests und Produktionen sind Aufgaben wie Syntax-Highlighting und konfigurierbare Compiler von großem Interesse. Es sind zahlreiche Applikationen realisiert worden, die jedoch einzeln für sich gewartet, aktualisiert und den lokalen Gegebenheiten angepasst werden müssen. Diese Einzelaufgaben werden von sogenannten Integrated Development Environments, als (Applikations-) integrierten Entwicklungs-Umgebungen zusammengefasst und dem Entwickler als eine eigenständige Applikation zur Verfügung gestellt. Damit steht dem Software-Entwickler eine individuelle Umgebung zur Verfügung, in der Tests, Kompilierungen und zusätzliche Aufgaben durchführbar sind.

Die Firma International Business Machines Corporation (IBM) beschloss im November 2001 ihren Quellcode für den damaligen Nachfolger des IBM-eigenen Visual Age for Java freizugeben und für Entwickler zugänglich zu machen. Es folgte die Weiterentwicklung dieser Plattform, welche heute als Eclipse in der Version 3.4 vorliegt. Besondere Features von Eclipse als IDE sind sowohl die software-produzierenden, als auch die software-verwaltenden Sub-Applikationen. Zu den ersteren zählen diverse Editoren, die sich durch Syntax-Highlighting und Code-Folding beim Schreiben des Quellcodes als hilfreich erweisen. Hierbei wurde durch stetige Weiterentwicklung die Möglichkeit geschaffen, fast alle Programmiersprachen in Eclipse abzubilden. Desweiteren sind die Views und ein weiterer Grund für die weite Verbreitung und Annahme durch Entwicklerteams. Bei den Views handelt es sich um Oberflächen-Fenster, die per Drag-and-Drop an die persönlichen Vorlieben des Entwicklers angepasst werden können und somit ein individuelles Gestalten der Arbeitsfläche ermöglichen. Perspektives sind vollständige Benutzer-Konfigurationen einzelner Views zu einer Gesamt-Arbeitsfläche, die erstellt, gespeichert und wiederverwendet werden können. Zu den software-verwaltenden Sub-Modulen gehören die umfangreichen Plug-In-Bibliotheken, die dank der Architektur und des Open Source-Charakters der Eclipse-Plattform stetig größer werden. Darunter zählen Compiler für diverse Programmiersprachen, passende Interpreter und Präprozessor-Anbindungen. Code-Coverage steht dabei als neuer Schwerpunkt in der verteilten Software-Produktion, bei dem, trotz multipler Programmier-Stile und –Ansätze, eine einheitliche Test-Abdeckung und Code-Formatierung realisiert werden kann. Neben diesen Build-Modulen sind vor allem infrastruktur-spezifische Module, wie Views für Repositorys zur Anbindung an CVS- oder SVN-Proxys frei verfügbar. Implementierungen für Jira- und andere Ticketing-Systeme sind ebenso unterstützend für die Software-Entwicklung einsetzbar, wie Anbindungen an komplexe Build-Systeme wie Maven oder Ant.

Zusammenfassen lässt sich sagen, dass eine vollintegrierte Entwicklungsumgebung die Grundlage für eine Software-Entwicklung und -Produktion darstellt. Dabei stellen die individuellen Anpassungs-Möglichkeiten der Oberfläche ein wichtiges Kriterium neben funktionsintegrierten Modulen und Plugins dar. Die quelloffene Architektur ermöglicht eine Realsierung von eigenen Projekten auf Basis von Eclipse und des zugrunde liegenden OSCGi-Frameworks. Plugins und individuelle Erweiterungen sind dadurch uneingeschränkt programmier- und implementierbar.