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

Verbesserte Team-Funktionen und DevOps-Pipeline

Mainframe-DevOps mit Compuware Topaz

Verbesserte Team-Funktionen und DevOps-Pipeline

Die DevOps-Lösung für den Mainframe Compuware Topaz erlaubt es in der neuen Version, neue Entwickler schneller einzubinden. Über ein Jenkins-Plugin wird nun zudem die Job Control Language für eine bessere Pipeline-Integration unterstützt. lesen

Was tut sich bei DevOps, Blockchain und Java?

Red Hat Predictions 2019

Was tut sich bei DevOps, Blockchain und Java?

Was bringt das neue Jahr für Programmierer und das Software Development? Für die Bereiche Entwickler und DevOps, Java sowie Blockchain haben sich Experten von Red Hat darüber Gedanken gemacht und einige Prognosen abgegeben. lesen

Mehr Softwarequalität mit Parasoft Jtest

Statische Codeanalyse und Modultests

Mehr Softwarequalität mit Parasoft Jtest

Qualitätssicherung in Echtzeit: Noch während Softwareentwicklung und Continuous Integration soll die Java-Testumgebung Parasoft Jtest erkennen, wie sich Codeänderungen auswirken. Das neue Release ist bereits erhältlich. lesen

Eclipse-Tool für integrierte Verschlüsselung

Open-Source-Projekt CogniCrypt verfügbar

Eclipse-Tool für integrierte Verschlüsselung

Nur wenige Entwickler haben Erfahrung damit, Verschlüsselung in ihre Anwendungen zu integrieren. Die TU Darmstadt hat mit CogniCrypt deshalb einen Kryptographie-Assistenten als Eclipse Open-Source-Projekt entworfen. lesen

Entwickler bauen auf Java 8 und IntelliJ IDEA

JVM Ecosystem Report 2018 von Snyk

Entwickler bauen auf Java 8 und IntelliJ IDEA

Das Java Development Kit, kurz JDK, hat mit dem Update auf Java 9 fundamentale Änderungen erfahren. Dies dürfte ein Grund dafür sein, dass Java 8 nach wie vor die verbreitetste Plattform für Anwendungen in der Produktivumgebung ist. lesen

Bereitstellung mit AWS Elastic Beanstalk

PaaS Application Management in der AWS Cloud

Bereitstellung mit AWS Elastic Beanstalk

„Wir würden gerne unsere bestehenden Web-Anwendungen in AWS ausrollen und skalieren. Welche PaaS-Lösungen existieren für die Bereitstellung von Anwendungen in der AWS Cloud?“ lesen

GrammaTech veröffentlicht CodeSonar 5

Statische Code-Analyse mit C#- und Visual-Studio-Support

GrammaTech veröffentlicht CodeSonar 5

Mit CodeSonar 5 hat GrammaTech die neueste Version des Tools für statische Code-Analyse veröffentlicht. Unterstützt werden nunmehr die Programmiersprache C# sowie Microsoft Visual Studio. lesen

Was ist ein SDK?

Definition „Software Development Kit“

Was ist ein SDK?

In einem Software Development Kit, kurz SDK, finden Entwickler viele hilfreiche Ressourcen, die sie zur Erstellung einer Software mittels einer bestimmten Technologie benötigen: Dokumentationen, Werkzeuge, Bibliotheken und auch Beispiele. lesen

DevOps-Prinzipien in vernetzten Mainframe-Umgebungen

Agilität und Mainframe sind kein Widerspruch

DevOps-Prinzipien in vernetzten Mainframe-Umgebungen

Entgegen der landläufigen Meinung stehen Agilität und der DevOps-Ansatz nicht im Widerspruch zum Mainframe. Mit einem stufenweisen Vorgehen lassen sich die Vorteile agiler Konzepte auch für Mainframe-Anwendungen nutzen. Dieser Beitrag nennt zehn Schritte, die bei der Umsetzung helfen. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44656089 / Definitionen)