am 15. Juni 2010
Da letzte Woche der Artikel über die Eclipse Validatoren anscheinend gut ankam, möchte ich noch ein paar Dinge über Eclipse loswerden. Dieses mal ist es vielleicht nicht ganz so ein Geheimtipp, wie im letzten Artikel, aber trotzdem interessant und hilfreich.
Es gibt eigentlich nur einen Grund, warum ich diese Eclipse Technik, die ich vorstellen will verwende. Ich bin faul! So wie ihr wahrscheinlich alle auch. Ein Freund meinte mal “Work smart not hard”, das passt ganz gut. Wenn man sich also das Leben erleichtern kann, dann sollte man es auch machen.
Wenn man Software entwickelt, dann gibt es immer wieder Codefragmente, die man öfters benutzt. Foreach wäre so ein Beispiel. Wenn man in Eclipse fore eingibt und dann kurz wartet erscheint schon die Autovervollständigung und man kann die IDE den Rest machen lassen. Die meisten einfachen und übergreifenden Templates, so nennt man sie in Eclipse, sind schon standardmäßig im System integriert, meist gibt es aber projekt- oder frameworkspezifische Codeschnipsel, die eben noch nicht eingespeichert sind. Vielleicht sowas wie ein Standard-Controller in einem MVC-Framework oder die Instanzierung eines Context-Objektes in einem anderen. Erstellen eines Singletons sieht auch immer sehr ähnlich aus. Euch wird schon was einfallen.
In Eclipse ist es ganz einfach so was einzurichten. Wir gehen jetzt mal davon aus, dass ihr PDT verwendet, ansonsten findet ihr den Template-Mechanismus an einer anderen Stelle. Also fangen wir an, wir öffnen die Preferences und wechseln zu PHP > Editor > Templates > New.
Einfach so ausfüllen, wie ihr es in dem Bild seht. Ihr könnt natürlich jetzt schon anfangen euren eigenen Beispielcode zu verwenden. Auf OK drücken und zurück zum PHP-Editor. Wenn ihr jetzt log tippt, dann müsste euch die Autovervollständigung schon vorschlagen, dass ihr doch das Template verwenden könntet. Das machen wir dann auch und schon ist steht da “Logger::getInstance()->log();”. Hervorragend.
Jetzt will man natürlich noch, dass der Cursor genau zwischen den letzten zwei Klammern erscheint, wenn man den Shortcut benutzt hat. Auch kein Problem. Dann schreiben wir einfach in unserem Template “Logger::getInstance()->log(${cursor}) ;” . Auch schon wieder gelöst das Problem. Natürlich könnt ihr auch den “Insert Variable” Knopf nutzen und schauen, was ihr da alles eintragen könnt. Es gibt aber auch Variablen, die dort nicht aufgeführt sind. Ihr könnt nämlich eigene verwenden. Dazu schauen wir uns mal das Foreach Beispiel an, von dem wir vorhin gesprochen haben. Hier steht im Pattern-Feld:
foreach (${dollar}${array_variable} as ${dollar}${variable}) {
${cursor};
}
${array_variable} wäre hier so ein Beispiel.Eclipse kennt diese natürlich nicht, wenn ihr aber fore eingebt, weiß das System, dass dort ein Platzhalter drinnen steht, der gefüllt werden soll. Ganz komfortabel könnt ihr dann zwischen den auszufüllenden Feldern “durchTABen”.
Das war auch schon der erste kurze Überblick über dieses Feature. Ich hoffe es gab unter den Lesern jemanden, der damit mal rumspielen wird.