Navigation

Seiten der Rubrik "Bücher"


Google Anzeigen

Anzeigen

Bücher

PHP Design Patterns


Statistiken
  • 10223 Aufrufe

Informationen zum Buch
  ISBN
  Autor
  Verlag
  Sprache
  Seiten
  Erscheinungsjahr
  Extras

Rezension von

Marc-Florian Wendland

PHP Design Patterns Das PHP ab der Version 5 objektorientierte Programmierkonzepte bietet – und zwar nicht pseudo-objektorientiert, wie in der Version 4 –, die sich durchaus mit den Konzepten höherer Programmiersprachen Sprachen wie Java oder C# messen lassen kann, ist schon lange kein Geheimnis mehr. Aufgrund der damit verbundenen Möglichkeit, Web-Applikationen mit einer rein objektorientierte Software-Architektur zu versehen, ebnet den Design Patterns den Weg in die Welt von PHP. Das Buch unterteilt sich grob in 5 Teilbereiche, der Einführung, den Entwurfsmustern, den Strukturmustern, den Verhaltensmustern und den Enterprise-Mustern.Die ersten zwei Kapitel bieten die sehr umfangreiche Einführung in objektorientierter Programmierung mit PHP 5.1, sowie grundlegender Entwurfskonzepte und –prinzipien. Im Abschnitt ‚Erzeugungsmuster’ widmet sich der Autor den Mustern Singleton, Factory-Method und Abstract-Factory. Im Punkt ‚Strukturmuster’ spricht er über das Composite-, Adapter-, Decorator-.Proxy- und Facade-Pattern. Hernach folgen die Verhaltensmuster, belegt durch Command-Pattern. Visitor-Pattern und Iterator-Pattern. Abschließend wendet sich der Autor den sogenannten Enterprise-Patterns zu, also Patterns, die konkret die Erstellung und Wartung von Frameworks für Web-Applikationen unterstützen. Hier klärt Stephan Schmidt vor allem Fragen darüber, wie man Objekte über zwei Web-Anfrage hinweg transportiert, welche Vorteile die Modellierung einer Domäne hat oder wie die Parameter eines Requestes komplett objektorientiert angesprochen werden können. Stephan Schmidt legt ein Buch vor, das verständlich und flüssig geschrieben ist und sich gut sowie interessant liest. Er versteht es, die Probleme und Fragen, die zwangsläufig beim Entwurf einer Applikation aufkommen, klar auszudrücken und eine ebenso adäquate Art, mögliche Lösungen dafür zu finden. Sehr gut gefällt mir in diesem Punkt, dass der Autor die Patterns und Prinzipien, die ihnen zugrunde liegen, anhand einer fiktive Autovermietungssoftware präsentiert, die im Laufe des Buches an Umfang und Komplexität zunimmt. So ermöglicht er dem Leser den Sinn und Zweck verschiedener Pattern in Aktion zu verfolgen, ohne ausschweifend darüber zu sinnieren. Dies wird zusätzlich zu durch wiederholende Zwecksätze, die mehrmals in jedem Pattern kursiv vom Text abgehoben dargestellt werden, unterstützt. Die Patterns der Enterprise-Schicht haben mir ebenfalls gut gefallen, denn sie geben dem Neuling im Pattern-Bereich eine wirklich gute Hilfestellung, um seine PHP-Skripte komplett von auf reine OO-Programmierung umzustellen, auch wenn dem fundierten Leser sicherlich ein, zwei Ungenauigkeiten bei der Umsetzung einiger der Patterns in einer Enterprise-Umgebung auffallen. Der Vorlauf des Buches, vor allem Kapitel 1, sind mir mit 100 Seiten aber doch deutlich zu lang. Ein Leser, der sich ein Buch über Design Patterns zulegt, benötigt meines Erachtens nach keinen so ausführlichen Einsteig in die objektorientierten Ansätze von PHP 5. Hier hätte der Verweis auf das PHP-Manual oder ein weiteres Buch genügt. „PHP Design Patterns“ beschreibt Design Patterns in der konkreten Anwendung mit PHP, dennoch hätte es meiner Meinung nach eine saubere Abstraktion der zugrunde liegenden Programmiersprache geben sollen. So sind einige der Beispiele doch sehr PHP/SPL-lastig. Betrachtet man das Buch als reine PHP-Hilfe für die Entwicklung, so fällt dieser Punkt nicht ins Gewicht, möchte man jedoch den Umgang mit „Design Patterns“ als solches erlernen, würde ich nicht zu diesem Buch raten, da es wie gesagt, sehr stark auf Eigenheiten der Sprache PHP eingeht. Trotzdem hat mich das Buch überzeugt, da es wirklich nachvollziehbar angepackt und umgesetzt wurde. Das globale Projekt (die Autovermietung) trägt zum Verständnis bei und ist nicht zu abstrakt gewählt. Die von mir angesprochenen Mängel sind nicht von schwerer Natur und könnten für eine etwaige Folgeauflage überarbeitet werden. Ebenso die Idee, dass Buch als Hardcover umzusetzen, was für O’Reilly-Titel ja eher ungewöhnlich ist, hat mir gefallen. So erfährt das Buch zusätzlich eine optische Aufwertung. Man sollte bei O’Reilly vielleicht die Überlegungen anstellen, künftig alle Bücher als Hardcover zu verlegen. Fazit: „PHP Desing Patterns“ ist ein Buch, das zum Nachdenken anregt. Auch wer schon viele Jahre PHP-Applikationen entwickelt wird in diesem Buch die ein oder andere Anregung finden, wie er seinen Code noch objektorientierter, und damit wartbarer bzw. wiederverwendbarer gestalten kann. Stephan Schmidt und O’Reilly legen mit diesem Buch einen soliden und schön aufbereitetes Buch zum Thema Design Patterns in PHP vor, das sicherlich nicht zum Standardwerk im Bereich „Design Patterns“ reifen wird, aber sich dennoch nicht zu verstecken braucht und dem versierten PHP-Entwickler eine gute Hilfe sein kann.

Das PHP ab der Version 5 objektorientierte Programmierkonzepte bietet – und zwar nicht pseudo-objektorientiert, wie in der Version 4 –, die sich durchaus mit den Konzepten höherer Programmiersprachen Sprachen wie Java oder C# messen lassen kann, ist schon lange kein Geheimnis mehr. Aufgrund der damit verbundenen Möglichkeit, Web-Applikationen mit einer rein objektorientierte Software-Architektur zu versehen, ebnet den Design Patterns den Weg in die Welt von PHP.

weitere Rezensionen von Marc-Florian Wendland

#
rezensiert seit
Buchtitel
2
12.10.2010
3
12.10.2010
4
12.10.2010
5
01.10.2010

Das Buch unterteilt sich grob in 5 Teilbereiche, der Einführung, den Entwurfsmustern, den Strukturmustern, den Verhaltensmustern und den Enterprise-Mustern.Die ersten zwei Kapitel bieten die sehr umfangreiche Einführung in objektorientierter Programmierung mit PHP 5.1, sowie grundlegender Entwurfskonzepte und –prinzipien.

Im Abschnitt ‚Erzeugungsmuster’ widmet sich der Autor den Mustern Singleton, Factory-Method und Abstract-Factory. Im Punkt ‚Strukturmuster’ spricht er über das Composite-, Adapter-, Decorator-.Proxy- und Facade-Pattern. Hernach folgen die Verhaltensmuster, belegt durch Command-Pattern. Visitor-Pattern und Iterator-Pattern.

Abschließend wendet sich der Autor den sogenannten Enterprise-Patterns zu, also Patterns, die konkret die Erstellung und Wartung von Frameworks für Web-Applikationen unterstützen. Hier klärt Stephan Schmidt vor allem Fragen darüber, wie man Objekte über zwei Web-Anfrage hinweg transportiert, welche Vorteile die Modellierung einer Domäne hat oder wie die Parameter eines Requestes komplett objektorientiert angesprochen werden können.

Stephan Schmidt legt ein Buch vor, das verständlich und flüssig geschrieben ist und sich gut sowie interessant liest. Er versteht es, die Probleme und Fragen, die zwangsläufig beim Entwurf einer Applikation aufkommen, klar auszudrücken und eine ebenso adäquate Art, mögliche Lösungen dafür zu finden. Sehr gut gefällt mir in diesem Punkt, dass der Autor die Patterns und Prinzipien, die ihnen zugrunde liegen, anhand einer fiktive Autovermietungssoftware präsentiert, die im Laufe des Buches an Umfang und Komplexität zunimmt. So ermöglicht er dem Leser den Sinn und Zweck verschiedener Pattern in Aktion zu verfolgen, ohne ausschweifend darüber zu sinnieren. Dies wird zusätzlich zu durch wiederholende Zwecksätze, die mehrmals in jedem Pattern kursiv vom Text abgehoben dargestellt werden, unterstützt.

Die Patterns der Enterprise-Schicht haben mir ebenfalls gut gefallen, denn sie geben dem Neuling im Pattern-Bereich eine wirklich gute Hilfestellung, um seine PHP-Skripte komplett von auf reine OO-Programmierung umzustellen, auch wenn dem fundierten Leser sicherlich ein, zwei Ungenauigkeiten bei der Umsetzung einiger der Patterns in einer Enterprise-Umgebung auffallen.

Der Vorlauf des Buches, vor allem Kapitel 1, sind mir mit 100 Seiten aber doch deutlich zu lang. Ein Leser, der sich ein Buch über Design Patterns zulegt, benötigt meines Erachtens nach keinen so ausführlichen Einsteig in die objektorientierten Ansätze von PHP 5. Hier hätte der Verweis auf das PHP-Manual oder ein weiteres Buch genügt.

„PHP Design Patterns“ beschreibt Design Patterns in der konkreten Anwendung mit PHP, dennoch hätte es meiner Meinung nach eine saubere Abstraktion der zugrunde liegenden Programmiersprache geben sollen. So sind einige der Beispiele doch sehr PHP/SPL-lastig. Betrachtet man das Buch als reine PHP-Hilfe für die Entwicklung, so fällt dieser Punkt nicht ins Gewicht, möchte man jedoch den Umgang mit „Design Patterns“ als solches erlernen, würde ich nicht zu diesem Buch raten, da es wie gesagt, sehr stark auf Eigenheiten der Sprache PHP eingeht.

Trotzdem hat mich das Buch überzeugt, da es wirklich nachvollziehbar angepackt und umgesetzt wurde. Das globale Projekt (die Autovermietung) trägt zum Verständnis bei und ist nicht zu abstrakt gewählt. Die von mir angesprochenen Mängel sind nicht von schwerer Natur und könnten für eine etwaige Folgeauflage überarbeitet werden.

Ebenso die Idee, dass Buch als Hardcover umzusetzen, was für O’Reilly-Titel ja eher ungewöhnlich ist, hat mir gefallen. So erfährt das Buch zusätzlich eine optische Aufwertung. Man sollte bei O’Reilly vielleicht die Überlegungen anstellen, künftig alle Bücher als Hardcover zu verlegen.

Fazit: „PHP Desing Patterns“ ist ein Buch, das zum Nachdenken anregt. Auch wer schon viele Jahre PHP-Applikationen entwickelt wird in diesem Buch die ein oder andere Anregung finden, wie er seinen Code noch objektorientierter, und damit wartbarer bzw. wiederverwendbarer gestalten kann. Stephan Schmidt und O’Reilly legen mit diesem Buch einen soliden und schön aufbereitetes Buch zum Thema Design Patterns in PHP vor, das sicherlich nicht zum Standardwerk im Bereich „Design Patterns“ reifen wird, aber sich dennoch nicht zu verstecken braucht und dem versierten PHP-Entwickler eine gute Hilfe sein kann.

geschrieben am 19.10.2006 | 673 Wörter | 4160 Zeichen

Kommentare lesen Kommentar schreiben

Kommentare zur Rezension (0)

Platz für Anregungen und Ergänzungen