luckyduck liest … PHP Design Patterns!

luckyduck liest … PHP Design Patterns!

Heute bin ich auf die Idee gekommen eine Serie zu starten: „luckyduck liest“. Ab und an, also in regelmäßig unregelmäßigen Abständen, schreibe ich etwas über IT relevante Bücher die ich gerade lese oder bereits gelesen habe.

Den Anfang macht hierbei eine klare Leseempfehlung für ein Buch über PHP: PHP Design Patterns !

Das Buch definiert die Aussage „Code is Poetry“ nocheinmal neu. Design Patterns waren mir nicht fremd, hatte ich mir doch vor einiger Zeit bereits einmal den Klassiker Design Patterns. Elements of Reusable Object-Oriented Software. zugelegt. Leider habe ich vor allem aus zeitlichen Gründen das Thema nie wirklich vertieft. Dies hat sich allerdings geändert, da ich nun endlich auch beruflich mich wieder intensiver mit der Programmierung beschäftigen kann.

Das Buch versetzt den gewillten Leser durch die enorme Praxisorientierung in die Lage wirklich „schönen“ Code zu verfassen, welcher sauber strukturiert ist und nachhaltig leicht zu pflegen ist.

Kapitel 1
Los geht es mit einer kurz gehaltenen Einführung in die wichtigsten Punkte der Objektorientierung und vor allem der neuen Möglichkeiten welche PHP 5.3 in diesem Bereich bietet.

Kapitel 2
Im Anschluss wird ein Überblick über die Standard PHP Library, die SPL, geboten und wirklich nützliche Klassen vorgestellt, welche PHP 5 dann bereits von Haus aus mitbringt. Hier sind wertvolle Tips zu z.B Interfaces wie „Iterator“ oder „ArrayAccess“ enthalten. Sie machen das leben einfacher und den Code (je nach Anwendungsfall) wirklich übersichtlicher.

Kapitel 3
Im dritten Kapitel geht es dann nocheinmal um gutes Software Design selbst und Mittel welche Entwickler mit PHP hier haben. Langsam aber sicher leitet das Kapitel 3 dann zum eigentlichen Schwerpunkt des Buches über, den Design Patterns.

Kapitel 4 – 8
Die letzten Kapitel konzentrieren sich tatsächlich voll auf Design Patterns für die verschiedensten Zwecke. Sie sind logisch unterteilt und nach Art der Muster in Kapitel unterteilt: „Erzeugungsmuster“, „Strukturmuster“, „Verhaltensmuster“ sowie „Enterprise-Patterns“ für die verschiedenen (möglichen) Schichten einer Applikation „Datenschicht“, „Business-Logik“ und „Präsentationsschicht“. Alles wird hierbei übersichtlich mit praktischen Beispielen erklärt und dabei nicht nur schlicht und einfach Beispiele „heruntergebetet“, sondern jeweils verschiedene Aspekte erläutert: Der Name, die Motivation (beschreibt ein Problem welches mit dem Pattern gelöst werden kann), der Zweck (eine abstrahierte Betrachtung der Problemstellung), die Implementierung selbst (mittels PHP versteht sich), eine Definition der Implementierung (losgelöst von PHP), Konsquenzen die sich aus der Anwendung ergeben (positive & negative Effekte) sowie weitere Anwendungen / Abwandlungen.

Das Buch wird durch einen aus meiner Sicht konsquent durchgehaltenen guten Schreibstil abgerundet, ist optisch unheimlich ansprechend (sowohl der Einband als auch der Druck) und wirkt an keiner Stelle künstlich in die Länge gezogen. Somit, klare Leseempfehlung!