TYPO3 Extension Development von Dmitry Dulepov
Seit längerer Zeit liegt das Buch von Dmitry Dulepov auf meinem Schreibtisch und wartet darauf gelesen zu werden. Nun hatte ich die Zeit und bin positiv überrascht!
Ich kenne und besitze bereits einige Bücher zum Thema TYPO3 und die erste Auffälligkeit dieses Buches ist dessen Dicke: Mit etwas mehr als 200 Seiten kann es mit den anderen nicht mithalten, aber es dient auch nicht als Referenz sondern ist vollgepackt mit qualitativ hochwertiger Information.
Das Buch befasst sich ausschließlich mit dem Thema Extension Programmierung, HTML, TS und Kenntnisse zu dem allgemeinen Verhalten von TYPO3 werden vorausgesetzt und (Gott sei Dank) nicht ein weiteres mal erklärt.
Kapitel 1 - TYPO3 API
Zu Beginn erfolgt eine Erklärung der TYPO3 API inklusive der wichtigsten Klassen und Funktionen. Wie schauen korrekte Datenbankabfragen aus und welche anderen nützlichen Funktionen sind verfügbar, um das Leben des Programmieres einfacher zu gestalten (GET, POST, String/Array/XML-Maniuplationen, ...). Genauso wird aber auch wichtige Bestandteile wie die TCEforms, TCEman, den Reference Indexs und den Cache eingegangen.
Kapitel 2 - Anatomie einer TYPO3 Extension
Es erfolgt die genaue Erklärung der einzelnen notwendigen Dateien und deren Sinn. Auch die praktischen Dinge wie ext_conf_template.txt, ext_tables_static+adt.sql, class.ext_update werden nicht vergessen.
Kapitel 3 - Planung
Viele Entwickler verzichten auf die Planung und wer hat es noch nicht die Programmierung gestartet bevor überhaupt alles fest gestanden hat. Dmitry behandelt dieses Kapitel sehr ausführlich, was einen weiteren Pluspunkt einbringt. Behandelt werden die Wahl des Keys der Extension, aber auch die Namen der einzelnen Felder und die geplanten Funktionen.
Kapitel 4 - Extension Generierung
Ausführlich wird die Funktionsweise des Kickstarters beschrieben.
Kapitel 5 - Allgemeines über Frontend-Plugins
Dmitry erklärt aus was ein FE-Plugin besteht, wie man TS-Variablen hierfür setzt und wie ein Plugin richtig konfiguriert wird. Nichts wird vergessen, Flexforms, HTML-Templates, Mehrsprachigkeit, Caching.
Kapitel 6 - Programmierung eines Frontend-Plugins
In dem Buch wird die Programmierung beispielhaft anhand einer Extension erklärt. In diesem Kapitel wird der FE-Teil programmiert und erklärt.
stdWrap für die Konfiguration von Feldern kommt hier genauso zum Zug wie eine List + Einzelansicht und eine Suche. Hier wird nochmals auf die Cache-Problematik eingegangen und ein Lösungsweg aufgezeigt. Fast als Höhepunkt kann man die Auto-suggest-Funktion bezeichnen, die mittels eID-Ansatz und prototype umgesetzt wird. Auch die Hooks finden am Schluss noch Platz.
Kapitel 7 - Programmierung eines Backend-Moduls
Das Ziel ist eine Extension, die anylisieren soll, wann sich ein Benutzer einloggt, wieviel Zeit er auf der Seite verbracht hat und wieviel Seiten besucht wurden.
Anhand dieses Beispiels wird nochmals näher auf die tca.php und deren Möglichkeiten eingegangen (types, palettes). Die Extension benützt einen Hook, dessen Funktionsweise genau erklärt wird.
Als Abschluss wird eine Statistik in einem Backend-Modul generiert.
Kapitel 8 - Extension vollenden
Das Letzte Kapitel beschäftigt sich mit den notwendigen Fragen, die geklärt werden müssen, bevor die Extension wirklich eingesetzt werden sollte. Dazu gehören Checks des Codes genauso wie Erstellung einer Dokumentation inkl Funktions-Index.
Fazit
Das Buch hat mich sehr positiv überrascht, da es einen Benutzer ausführlich und trotzdem sehr behutsam in die Welt der Extension-Programmierung einführt. Ich hätte mir schon viel früher so ein Buch gewünscht und hätte unzählige Stunden eingespart.
Dmitry läßt kein Thema unberührt und gibt Antworten auf all die Fragen, die ein typischer Anfänger hat bzw. die ihn erzweifeln lassen. Kein Buch kann die komplette Extension-Programmierung zu 100% beschreiben, aber Dmitry ist sehr nahe dran, gerade weil es sein Metier ist und ich muss sagen, dass selbst ich einiges aus dem Buch gelernt habe.
Link
http://www.packtpub.com/typo3-extension-development/book
- 13.04.2008: Extension rgnewsimg veröffentlicht
- 29.01.2008: Gravatare bei sk_pagecomments
- 12.01.2008: Microsite ringer.it veröffentlicht
- 01.04.2008: Neue Extensions
- 04.12.2008: TYPO3 Extension Development von Dmitry Dulepov


