Berufsbedingt arbeite ich derzeit an zwei verschiedenen Laptops, wobei ich auf einem keine Administratorenrechte besitze. Da nicht immer beide Laptops mitnehmen möchte, bzw. grundsätzlich angehalten bin, auf dem Laptop ohne Administratorenrechte keine fremde Software zu installieren, suche ich nach einer passenden Online IDE. Nachdem ich jetzt ein paar Sachen ausprobiert habe, eine Zusammenfassung meiner Erfahrungen im Bereich Online PHP IDE mit Smart Code Completion.

Arten von Online IDEs

Grundsätzlich gibt es zwei verschiedene Arten von Online IDEs:

  • Cloud IDE: Unter einer Cloud IDE verstehe ich Angebote wie bspw. Cloud9 (https://c9.io/) oder Codio (https://codio.com).
  • Self-Hosted IDE: Es finden sich im Internet auch eine Reihe von Download-Paketen für den eigenen Server wie bspw. Codiad (http://codiad.com/) oder ICEcoders (https://icecoder.net/).

Unabhängig ob online Cloud IDE oder online Self-Hosted IDE im Gegensatz zu offline IDEs wie bspw. Eclipse oder Netbeans sind die online Varianten oft kostenpflichtig bzw. gibt es verschiedene Pakete.

Außerdem bin ich noch auf eine dritte Art von “Online IDE” gestoßen, die ich bisher jedoch noch nicht getestet habe. Bei TheNextWeb (http://thenextweb.com/google/2013/11/21/google-building-chrome-app-based-development-environment-using-dart-polymer/) wird über ein IDE-Plugin berichtet, welches direkt im Chrome Browser läuft – Chromedeveditor (https://github.com/dart-lang/chromedeveditor). Aus der Beschreibung wird nicht ganz klar ob damit nur JavaScript und Dart Anwendungen geschrieben werden können oder ob auch andere Sprachen unterstützt werden.

Code Completion vs. Code Intelligence

Zunächst hatte ich geglaubt, dass mein gesuchtes Feature unter dem Begriff “Code Completion” existiert. Jedoch bezeichnet Code Completion nur das Feature, das bereits bekannte PHP-Funktionen, wie bspw. “substr” und “substr_count” bei der Eingabe von “sub” und dem gleichzeitigem Drücken von “STRG” + “Leertaste” entsprechend vorgeschlagen werden.

Code Completion in Netbeans

Code Completion in Netbeans für PHP Standardfunktionen

Dies wird oftmals einfach über eine zuvor definierte XML-Datei erreicht und erfordert kein Code Verständnis.

Durch einen Artikel bei StackOverflow (http://stackoverflow.com/questions/1738696/php-ide-with-best-code-completion) habe ich dann gemerkt, dass ich mindestens nach “Smart Code Completion” bzw. “Code Assistance” oder auch “IntelliSense” suchen muss.

Online PHP IDE mit Smart Code Completion aka Code Assistance aka IntelliSense

Verwöhnt von den offline IDEs Eclipse PDT (https://eclipse.org/pdt/) und Netbeans (https://netbeans.org) bin ich auf der Suche nach einer Online IDE, die neben Code Completion, auch Smart Code Completion aka Code Assistance aka IntelliSense beherrscht.

In praktischen Tests mit c9, Codio und ICEcoders war keine der Online IDEs in der Lage mir die passenden zugehörigen Methoden eines selbst definierten Objektes vorzuschlagen. Entweder es gibt grundsätzlich keine Vorschläge oder nur die Standard-PHP-Funktionen oder einfach alle Funktionen unabhängig ob sie zum jeweiligen Objekt gehören. Besonders bei der Objektorientierten Programmierung (OOP) ist das Vorschlagen der passenden Methoden besonders hilfreich für eine schnelle und fehlerfreie Programmierung. Außerdem wird neben dem reinen Methodennamen, wenn entsprechend angegeben, auch die Dokumentation zu den jeweiligen Variablen angezeigt und auf korrektes Type Hinting (http://php.net/manual/de/language.oop5.typehinting.php) geachtet.

Online PHP IDE mit Smart Code Completion gesucht wie in Netbeans für selbst definierte Methoden

Smart Code Completion

Weitere Links

Für weitere Informationen bzgl. Online PHP IDE mit Smart Code Completion ist der englischsprache Wikipedia-Artikel Comparison of JavaScript-based source code editors lesenswert. In diesem wird nochmals dargestellt, welche Editoren hinter den oben genannten Online IDE Diensten stecken und über welche Funktionen diese verfügen. Die Smart Code Completion aka Code Assistance aka IntelliSense ist in der Features-Liste bisher noch nicht erwähnt, wodurch es immer auf den konkreten Einzeltest ankommt.

Für Hinweise in den Kommentare bzgl. weiterer möglicher Kandidaten von Online PHP IDE mit Smart Code Completion würde ich mich wirklich freuen, gerne auch kostenpflichtige Angebote.