PHP-Entwicklung mit Eclipse

DruckversionAls E-Mail versendenZum Magazin-Forum

Mit freundlicher Genehmigung des T3N Magazins (Ausgabe 04/2006).

Neben den zu kompilierenden Programmiersprachen nehmen die interpretierten Sprachen eine immer wichtigere Rolle in Softwareprojekten ein. Gute Entwicklungsumgebungen sind deshalb auch für Sprachen wie Python, PHP und Perl notwendig, um die Übersicht über umfangreichen Quellcode zu behalten und effizient zu entwickeln.

Nachdem im Artikel "Eclipse – Eine universelle Entwicklungsumgebung" einige grundlegende Begriffe zu Eclipse erläutert wurden, werden in diesem Artikel PHP-Entwicklungsumgebungen für Eclispse vorgestellt. Neben PHPeclipse und Xored TruStudio wird dabei mit PHP IDE die wohl zukunftsträchtigste Lösung im Mittelpunkt stehen.


PHPeclipse – die Community Variante

Mit PHPeclipse entstand schon recht früh ein von der Community initiiertes Projekt mit dem Ziel, Eclipse für die Entwicklung von PHP-Projekten zu nutzen. Das Projekt ist über die Zeit sehr gereift und heute das wohl bekannteste und meist genutzte Eclipse-Projekt für PHP.

Zum Funktionsumfang gehören ein leistungsfähiger PHP-Editor mit Syntax-Highlighting und Autovervollständigung, die Fähigkeit, HTML zu bearbeiten und einige Debugging-Funktionen. Weitere Informationen zu diesen Projekt wie auch Screenshots sind auf der Webseite des Projekts verfügbar.


Xored TruStudio – IDE mit attraktiven Ansätzen

Xored ist ein kommerzieller Anbieter von IDEs für Skriptsprachen. Neben PHP beherrscht das TruStudio getaufte Produkt auch die Skriptsprache Python. Das Produkt existiert in einer Community- Version und einer kommerziellen Variante mit erweitertem Funktionsumfang.

Positiv fällt an TruStudio die Anlehnung an das Look&Feel der Java Development Tools auf. So lieferte diese Lösung bis vor kurzem als einzige der drei hier vorgestellten Kandidaten einen Package-Explorer, der es dem Entwickler erleichtert, durch den Quellcode auf Basis von Paketen, Klassen und Funktionen zu navigieren. Gegenüber der oft genutzten Ansicht "Navigator" (der Standard-Ansicht, um verschiedene Arten von Dokumenten hierarchisch darzustellen) ist dies ein klarer Vorteil. Leider scheint das Produkt nicht mehr aktiv weiterentwickelt zu werden, weshalb es höchstens noch als Referenz für gute Konzepte dienen kann.


PHP IDE – offizielles Eclipse Subprojekt

Sorgten in der Vergangenheit bereits zwei verfügbare IDEs für ein wenig Auswahl, gesellt sich nun mit PHP IDE (Offizielle PHP IDE-Website) ein dritter Kandidat in die Runde. IBM und Zend starteten das Projekt gemeinsam unter dem Dach von Eclipse. Im Oktober 2005 angekündigt, plant das Projekt bereits im September 2006 die Veröffentlichung der Version 1.0. Die schnelle Entwicklung erklärt sich durch die Tatsache, dass das Projekt auf die Vorarbeit des Web Tools Projekt (WTP) aufsetzt, einem weiteren Unterprojekt von Eclipse, das Werkzeuge für die Verarbeitung von Dokumenten wie XML/XHTML, CSS und Javascript bereitstellt. PHP IDE realisiert dabei die neuen Komponenten Core, UserInterface und Debug.


Die Core-Komponente

Die Core-Komponente stellt Modelle zur Verwaltung der Sprache und dem Auflösen von Bibliotheksabhängigkeiten zur Verfügung. Außerdem stehen Builder und Code Formatierer für die Sprache zur Verfügung. Die Core Komponente stellt die stabile Basis für das UserInterface und die Debug Komponente.




Die Architektur von PHP IDE im Überblick.(Quelle: www.eclipse.org)



Die UserInterface-Komponente

Die UserInterface-Komponente stellt einen spezialisierten Editor und mehrere Ansichten zusammen mit einer PHP-Perspektive bereit. Der Source-Editor fügt sich, wie in der Architekturgrafik angedeutet, nahtlos an das Web Tools Projekt ein. Als sogenannter strukturierter Editor stellt er die bekannten Funktionen wie Syntax-Highlighting, Autovervollständigung und Quellcode-Faltung zur Verfügung.

Unter Quellcode-Faltung ist die optische Teilausblendung von Quellcode innerhalb des Editors zu verstehen, die etwa aktuell nicht relevante Teile wie PHPDoc-Kommentare unterdrückt und damit dem Entwickler eine bessere Übersicht über den Quellcode liefert.

Leistungsfähige Funktionen wie Code-Templates, die während des Editierens automatisch zur Verfügung stehen, um Fehler von typische Routinen fernzuhalten, sind, wie Bookmarks, Taskverwaltung und das Setzen von Breakpoints, weitere Eigenschaften des Editors.

Neben dem Editor geben zahlreiche Ansichten detaillierte Auskunft über das in Bearbeitung befindliche Projekt. Der Package Explorer liefert, ähnlich wie TruStudio, eine erweiterte Ansicht auf die Ressourcen mit der Möglichkeit, neben der Darstellung der Dateien auch in die Dateien auf Basis von Klassen und Variablen zu navigieren.

Die PHP-Project-Outline-Ansicht liefert eine Auflistung aller im Projekt erfassten PHP-Ressourcen auf Basis der drei Kategorien Klassen, Funktionen und Konstanten. Diese Informationen ergänzt die PHP-Functions-Ansicht um eine Auflistung der von PHP zur Verfügung gestellten Methoden. Durch Anklicken der Funktion wird diese in den Quellcode eingefügt.




Eclipse PHP IDE vor Aufruf der PHP Manual Funktion, die das Nachlesen der API auf php.net ermöglicht. Detailansicht



Eine Besonderheit steht hier, wie auch im Editor, zur Verfügung: Durch Markierung einer PHP-Methode und der Auswahl des Eintrags "Open PHP Manual" im Kontextmenü wird die Beschreibung der Methode durch Aufruf der entsprechenden URL von www.php.net direkt im integrierten Webbrowser angezeigt. Die Anbindung der UserInterface-Komponente an die Standard-Ansichten Navigation, Outline, Tasks und Problems komplettieren das Bild.


Die Debug-Komponente

Die Debug-Komponente ist die dritte im Bunde und stellt ihre Funktionalität über eine eigene Perspektive zur Verfügung. Ein Debugger von Zend wird bereits mitgeliefert, es besteht aber auch die Möglichkeit, PHP IDE an einen auf dem Webserver laufenden Debugger anzubinden.


Installation von PHP IDE

Die Installation von PHP IDE gestaltet sich recht einfach. Neben der Möglichkeit, die Installation als heruntergeladenes Bundle durchzuführen (verfügbar auf der Projektseite), stellt die Installation über eine bereits existierende Eclipse 3.2 Version und der Update-Site-Funktion die bessere Wahl dar.

Wählt man den Weg über die Update-Site, ist zu beachten, dass alle Abhängigkeiten von PHP IDE zu anderen Projekten (vier Stück an der Zahl) aufgelöst werden müssen. Man kann sich diese Mühe sparen, indem man auf das vor kurzem veröffentlichte Callisto-Release setzt. Mit diesem "Master-Release" publizierte Eclipse aktuelle Versionen der Top-10-Projekte als Bundle.


Fazit

Mit PHP IDE entsteht eine sehr interessante und leistungsfähige Entwicklungsumgebung, deren Nutzung bereits möglich ist und sich lohnt. In Kombination mit WTP, Subversion, WebDAV und dem integrierten Webbrowser besitzt der Entwickler alle Werkzeuge, um seine Kommandozentrale nicht mehr verlassen zu müssen.


01/2007, Sven Wilhelm



Sven Wilhelm arbeitet seit über zwei Jahren mit Eclipse. Er ist Gesellschafter der Firma moduleBox, spezialisiert auf Content- und Systems-Management und dort als technischer Leiter tätig.


Kommentare zu diesem Beitrag 


Schreiben Sie einen Kommentar zu diesem Beitrag

Newsletter abonnieren

Verpassen Sie nichts und bleiben Sie informiert mit unserem Newsletter.
Ihre E-Mail Adresse:  
RSS-Feed: Alle News aktuellUnsere News auf Ihrer Website

Weitere Beiträge zu diesem Thema

Metamorphose im Content Management
Die Contentmanager.days standen dieses Jahr unter dem Motto "Metamorphose". Eine Metamorphose beschreibt in der Natur einen regelmäßigen Prozess des Wandels. Übertragen auf das Content Management bedeutet das: Der Wandel ist beständig...
JSR 170: Standardisierung der Content-Repository-Schnittstelle
Das World Wide Web ist das am weitesten verbreitete und genutzte Softwaresystem, das jemals entwickelt wurde. Es nutzt eine relativ einfache, standardisierte Schnittstelle, um Informationen aus der ganzen Welt in sich zu vereinen...
Der Erfolg Ihrer Website: Eine Frage der Glaubwürdigkeit
Glaubwürdigkeit wird in der Geschäftswelt groß geschrieben. Das ist leicht anhand einiger Negativbeispiele zu belegen...
Wissensmanagement – und die Sprache?
Die meisten Wissensmanagement-Aktivitäten vollziehen sich im Medium Sprache. Trotzdem spielt die Qualität dieses Mediums in der Theorie und in der Praxis des Wissensmanagements praktisch keine Rolle...
Bausteine eines Web-Textes
Der User will an erster Stelle erfahren, welche Kernaussage Ihr Text ihm vermitteln wird. Um ihm dies zu erleichtern, strukturieren Sie Ihren Text in unterschiedliche Teile...

Beiträge aus anderen Themenbereichen

VOICE Days plus: Deutschlands Servicewelt im Fokus
Im Interview spricht der Schirmherr der Initiative Prof. Dieter Spath über "Das Konstruktionsbüro für Dienstleistungen" und vieles mehr. Am 12. Oktober eröffnet Prof. Dieter Spath den VOICE Days plus Kongress...
Lösungsmöglichkeiten zum Konflikt der E-Mail-Archivierung mit Fernmeldegeheimnis und Datenschutz
Die Gestattung der privaten Nutzung der betriebseigenen IT-Infrastruktur durch die Mitarbeiter bringt nicht zu unterschätzende rechtliche Komplikationen mit sich – gerade was auch die Archivierung von E-Mails anbelangt...
eCommerce & Datenschutz - Das sollten Sie wissen
Datenschutz spielt auch im eCommerce eine große Rolle. So müssen z.B. für den Betrieb eines Onlineshops die gesetzlichen Vorschriften zum Datenschutz eingehalten werden...

Spiele und Anregungen
Das Content Management PortalDas Dokumenten Management PortalDas IT-Security PortalDas Customer Relationship Management PortalDas E-Commerce PortalDas Enterprise Resource Planning PortalPortal für VoIP und mobile KommunikationDas Magazin für IT im KrankenhausDas Verzeichnis für IT-Profis
homeimpressumerklärung zum datenschutz - privacy policykontaktwerbung

know how

news

veranstaltungen

Schnellsuche