Definition „Eclipse (IDE)“

Was ist Eclipse?

| Autor / Redakteur: il1411 / Stephan Augsten

Eclipse wurde ursprünglich als eigenständige Entwicklungsumgebung konzipiert, mittlerweile sind Erweiterungen in Form von Plug-ins zwingend notwendig.
Eclipse wurde ursprünglich als eigenständige Entwicklungsumgebung konzipiert, mittlerweile sind Erweiterungen in Form von Plug-ins zwingend notwendig. (Bild: vancarlosfr - Pixabay.com / CC0)

Beim Open-Source-Projekt Eclipse handelt es sich um eine integrierte Entwicklungsumgebung, kurz IDE. Eclipse ist für zahlreiche Programmiersprachen und Metasprachen geeignet. Die Standardversion lässt sich durch verschiedene Plug-ins erweitern.

Die Entwicklung von Eclipse

Mit dem Open-Source-Programmierwerkzeug Eclipse lassen sich Softwareprojekte unterschiedlichster Art realisieren. Ursprünglich war Eclipse als integrierte Entwicklungsumgebung (Integrated Development Environment, IDE) für die objektorientierte Programmiersprache Java gedacht.

Mittlerweile setzt man Eclipse auch für viele andere Aufgaben im Bereich der Softwareentwicklung ein. Für die IDE sind inzwischen nämlich eine Vielzahl von quelloffenen und kommerziellen Erweiterungen für Sprachen wie HTML, CSS oder PHP erhältlich.

Als Nachfolger der Entwicklungsumgebung IBM Visual Age for Java 4.0 wurde Eclipse im November 2001 vom Softwarehersteller IBM freigegeben. Das von IBM geführte Eclipse-Konsortium beschloss im Februar 2004, eine eigenständige Eclipse-Foundation zu gründen. Seither ist diese Foundation für die Entwicklung der Programmierumgebung verantwortlich. Die Aufgabe der gemeinnützigen Gesellschaft ist es, die Open-Source-Entwickler und deren Projekte zu leiten.

Versionen und Versionsnamen

Unter der Leitung der Eclipse-Foundation wurden bislang 14 Versionen von Eclipse veröffentlicht. Dabei wurden die einzelnen Versionen bzw. die zugrundeliegenden Projekte nach den Monden des Jupiters (Callisto, Europa, Ganymede), nach Raumsonden (Galileo, Helios), nach Planeten (Mars) und nach dem für die Entwicklungsumgebung so typischen Farbton (Indigo) benannt.

Seit der Eclipse-Version 3.5 (Galileo), die am 24. Juni 2009 freigegeben wurde, werden die Versionsnamen in alphabetischer Reihenfolge gewählt. Die Versionen 3.8 und 4.2 (Projektname Juno) wurden zeitgleich am 27. Juni 2012 veröffentlicht.

Jede Version steht den Nutzern sowohl als Grundversion als auch als Zusammenstellung verschiedener Packages zur Verfügung. Einzelne Programmpakete lassen sich bei Bedarf zu einem späteren Zeitpunkt nachinstallieren. Eclipse hat standardmäßig eine englischsprachige Benutzeroberfläche. Zu jeder Eclipse-Version sind allerdings auch Babel-Language-Packs erhältlich, welche sich in den gewählten Sprachen als Plug-ins installieren lassen.

Die Architektur von Eclipse

Eclipse wurde ursprünglich als erweiterbare Entwicklungsumgebung konzipiert. Diese Idee hielt sich bis einschließlich Version 2.1. Seit der Version 3.0 handelt es sich bei Eclipse nunmehr nur noch um den Kern der IDE, dessen Aufgabe es ist, die verschiedenen Plug-ins zu laden. Diese stellen anschließend die eigentliche Funktionalität der IDE zur Verfügung.

Eclipse selbst wie auch die dafür erhältlichen Plug-ins sind in Java implementiert. Zur Erstellung der grafischen Oberfläche wurde das Standard Widget Toolkit (SWT) gewählt. Mittlerweile gibt es Eclipse für 14 verschiedene Architekturen und Betriebssysteme, wie z.B. Windows, Linux, Mac OS, Solaris 8 und FreeBSD. Deshalb gilt Eclipse als plattformunabhängig.

Die Plug-ins, die für Eclipse erhältlich sind, lassen sich sowohl durch Entpacken der Installationsdatei als auch direkt über den Eclipse „Market Place“ installieren. Mit der Rich Client Platform bietet Eclipse Entwicklern die Möglichkeit, auf dem Eclipse-Framework basierend Anwendungen zu schreiben, die von der Eclipse-IDE selbst unabhängig sind. Als Plug-ins werden hierfür die Eclipse Core Platform, das Standard Widget Toolkit (SWT) und das GUI-Toolkit JFace benötigt.

Die Benutzeroberfläche von Eclipse

Eclipse verwendet verschiedene Konzepte, um die Arbeit mit Code-Texten und anderen Ressourcen so weit wie möglich zu vereinfachen. Hierzu zählen:

  • Sichten (Views)
  • Editoren
  • Perspektiven

Bei den sogenannten Sichten (Views) handelt es sich um kleine Fenster, die einzelne Aufgabenbereiche aus unterschiedlichen Sichtweisen darstellen. Mittels Drag & Drop lassen sich die Fenster beliebig anordnen – sowohl als Tabs als auch als dauerhaft sichtbare Fenster oder in Form sogenannter „Fast Views“, die sich als Symbole auf einer frei positionierbaren Symbolleiste befinden und sich per Mausklick einblenden lassen.

Ein Beispiel für Sichten ist beispielsweise die Navigator-View, die alle Dokumente anzeigt, die im Projektverzeichnis enthalten sind. Eine weitere View ist der Klassenexplorer. Dieser zeigt baumartig strukturiert und unter Verwendung von Symbolen alle Klassen, Variablen, Funktionen und Importe des aktuellen Quelltextes an.

Innerhalb des Programmfensters nimmt der Editor den größten Raum ein. Über Editoren lassen sich Quelltexte anzeigen und bearbeiten, wobei die Syntax der jeweiligen Programmiersprachen farblich markiert wird. Bei Eclipse gibt es für jede Programmiersprache wie Java, PHP, C oder Python einen eigenen Editor. Neben den reinen Texteditoren sind auch visuelle Editoren (z.B. Drag-&-Drop-Editoren zum Erstellen grafischer Benutzeroberflächen) für Eclipse erhältlich.

Bei den sogenannten Perspektiven handelt es sich um vollständige Anordnungen von Views, Editoren sowie von Symbol- und Menüleisten. Die Perspektiven lassen sich nach Bedarf konfigurieren, wobei eine benutzerdefinierte Konfiguration dauerhaft gespeichert werden kann. Nachinstallierte Plug-ins stellen häufig vorkonfigurierte Perspektiven bereit, welche problemlos den eigenen Vorstellungen entsprechend angepasst werden können.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Cloud-native Entwicklung mit neuen Tools

Red Hat CodeReady Workspaces 2

Cloud-native Entwicklung mit neuen Tools

Red Hat CodeReady Workspaces 2 bietet neue Funktionen wie Air-Gap-Installationen, Unterstützung für Visual-Studio-Code-Erweiterungen und einer aktualisierten Benutzeroberfläche. lesen

Mehr Development-Tools für die Cloud geplant

Neue Arbeitsgruppe der Eclipse Foundation

Mehr Development-Tools für die Cloud geplant

Die Eclipse Foundation hat eine neue Arbeitsgruppe ins Leben gerufen, um die Bereitstellung von Cloud-Entwicklungswerkzeugen voranzutreiben. Zur Gruppe gehören namhafte Unternehmen wie IBM, Red Hat, SAP und Broadcom. lesen

Verbessertes Testing von Mainframe-Software

Updates und OpenLegacy-Integration für Compuware Topaz

Verbessertes Testing von Mainframe-Software

Die auf Mainframe-Anwendungen ausgerichtete Testing-Lösung Topaz for Total Test steht in einer neuen Version bereit. Compuware hob in einer Ankündigung insbesondere optimierte Reportings und Dashboards sowie erweiterten Programm-Support hervor. lesen

Wo Microservice-Architekturen sinnvoll sind

Bereitstellung nach dem Prinzip „Teile und herrsche“

Wo Microservice-Architekturen sinnvoll sind

Leichtgewichtig, zustandslos und bedarfsgerecht skalierbar: Microservice-Architekturen haben es in sich. Gleichzeitig verändern sie die Art und Weise, wie Unternehmen ihre Software entwickeln und bereitstellen. lesen

Welche Linux Shell darf es sein?

Bash und andere Kommandozeilen-Interpreter

Welche Linux Shell darf es sein?

Die erste Assoziation bezüglich einer Linux-Shell dürfte bei den meisten Anwendern wohl Bash sein. Die Bourne-again Shell ist der Quasi-Standard – und nur die wenigsten Nutzer dürften sich überhaupt dafür interessieren, wo sie da ihre Kommandos eintippen. Dabei gibt es durchaus interessante Alternativen. lesen

Mehr Java-Runtimes in Jelastic Multi-Cloud PaaS

Etliche OpenJDK-Distributionen hinzugefügt

Mehr Java-Runtimes in Jelastic Multi-Cloud PaaS

Jelastic erweitert das PaaS-Angebot, sprich Platform as a Service, um eine bessere Java-Unterstützung. Hierfür haben die Betreiber verschiedene OpenJDK-Distributionen hinzugefügt. lesen

Was ist Kotlin?

Definition „Kotlin (Programmiersprache)“

Was ist Kotlin?

Die objektorientierte Programmiersprache Kotlin wurde 2011 veröffentlicht und ist eine vergleichsweise junge Sprache. Sie besitzt viele zeitgemäße Features, lässt sich für Android und das Web verwenden und macht einiges besser als Java. lesen

7 Lektionen für IoT-Softwareentwicklung

Unterschiede zu klassischem Development

7 Lektionen für IoT-Softwareentwicklung

Das Internet der Dinge, kurz IoT, wächst und gedeiht. Aus diesem Trend hin zu immer mehr vernetzten Produkten ergeben sich einige Änderungen für die Softwareentwicklung. Dieser Beitrag beleuchtet die wichtigsten Unterschiede und sieben Lehren, die sich daraus ziehen lassen. lesen

Wie sinnvoll ist ein Code of Conduct?

Zusammenarbeit in Open-Source-Projekten

Wie sinnvoll ist ein Code of Conduct?

In vielen Open-Source-Projekten sind in den vergangenen Jahren Codes of Conduct, sprich Verhaltenskodizes aufgetaucht – samt zugehöriger Diskussionen. Aber was hat es mit diesen Seid-doch-bitte-lieb-Zettelchen überhaupt auf sich? Und wie kann man sie adaptieren? lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 44656089 / Definitionen)