Endlich ist das lang erwartete deutschsprachige Buch zum beliebten Symfony Framework erschienen. Dem Untertitel "Enterprise-Anwendungen mit PHP" möchte der Autor Timo Haberkern in fast 20 reich illustrierten Kapiteln gerecht werden. Symfony hat sich in jüngerer Vergangenheit einen Namen im Bereich PHP 5 Frameworks, etwa Zend Framework oder CakePHP, erarbeitet. Die Anlehnung an "sprachfremde" Vergleichsprojekte wie Ruby on Rails ist unverkennbar, erwünscht und stört nicht im Geringsten.
Das Buch richtet sich an PHP-Entwickler mit Erfahrung in den Bereichen Objektorientierung, MVC oder auch Datenbankabstraktionstechniken. Dennoch verschaffen die ersten vier Kapitel einen sehr guten Gesamteindruck und einen brauchbaren Einstieg für Symfony-Neulinge. Die bereits erwähnten zahlreichen Abbildungen und Codebeispiele (und hierunter fallen natürlich auch die obligatorischen, dem Framework zutiefst innewohnenden YAML-Konfigurationseinstellungen) erleichtern das Verstehen der Kernlogik hinter Symfony und dessen Gebrauch deutlich. So gelangt der Leser bereits innerhalb kürzester Zeit zu einer vorzeigbaren Webapplikation.
Die Kapitel fünf bis zehn widmen sich ausführlich der Beschreibung der Model-, View- und Controller-Schicht. Hier offenbart das Buch seine eigentlichen Bonuspunkte: Viele Informationen schließen Wissenslücken oder liefern weiterführende Hinweise, die man möglicherweise in der Onlinedokumentation vermisst hatte. Die beiden Kapitel zur Modelschicht beschreiben die zwei derzeit nutzbaren ORM Frameworks Propel und Doctrine ausführlich. Spätestens jetzt spürt man die Praxisnähe und den Wissensvorsprung des Autors, gibt er doch an einigen Stellen Tipps und begründet Vor- und Nachteile des einen oder des anderen Ansatzes.
Eines der Kapitel sollte eingefleischten Ruby-on-Rails-Anhängern bekannt vorkommen: Hier geht es um Scaffolding und Generatoren. Das anschließende AJAX-Kapitel kommt recht knapp daher, vermittelt aber dennoch alles Wichtige in geraffter Form.
Auf den weiteren knapp 27 Seiten geht es um Sicherheit und Performance. Allein der Umfang lässt zu Recht vermuten, dass hier nur an der Oberfläche gekratzt werden kann, was aber eindeutig nicht gegen das Buch spricht. Wichtige Punkte werden angerissen und der Autor bleibt im eigentlichen Kontext des Buchs: die Beschreibung und Dokumentation eines Frameworks.
Kernpunkte der nachfolgenden Kapitel sind Anwendungswartung (u.a. Deployment), Internationalisierung, Debugging und Testing: Hier gibt es einen kurzen aber knackigen "Ausflug" in die testgetriebene Entwicklung und agile Softwareentwicklungstechniken. Das Testing-Kapitel wird mit praktischen Beispielen zur Verwendung des Symfony-eigenen Test-Frameworks Lime abgerundet, auch eine Beschreibung zur Migration des weitverbreiteten PHPUnit fehlt nicht.
Das Symfony seine Stärken auch in den mannigfaltigen Konfigurationseinstellungen ausspielen kann und keineswegs an ausschließlich starre Regeln, die von YAML als Dialekt vorgegeben werden, gebunden sein muss, zeigt das letzte Kapitel des Buchs. Der Autor zeigt unter anderem, wie sich die grundlegende Verzeichnisstruktur des Framworks an eigene Bedürfnisse anpassen lässt, etwa um Symfony in bereits bestehende Projekte einzubetten. Nicht zuletzt werden Brücken zu zwei großen bekannten Projekten, nämlich zum Zend Framework und zu den eZ Components gebaut.
Timo Haberkern rundet sein Erstlingswerk mit einem kompakten Anhang ab: Es werden Symfony-"freundliche" Entwicklungsumgebungen beleuchtet, die verfügbaren Kommandozeilenbefehle erklärt und die Migration von bestehenden Symfony-1.0-Anwendungen zum aktuellen Release 1.1 beschrieben. Im Übrigen beziehen sich die allermeisten Beispiele auf die neuere Version – worauf der Autor aber gleich eingangs hinweist.
Dieses Buch schließt Lücken zur Onlinedokumentation und ist zudem das erste zum immer populärer werdenden Symfony Framework in deutscher Sprache. Es unterstreicht in jeder Hinsicht die Enterprise-Reife des Projekts, was besonders auch für Entscheider in Softwareprojekten hilfreich sein dürfte. Glücklicherweise wird auf die fast schon obligatorischen Standardbeispiele "Blog" oder "News-Site" verzichtet. Das Stichwortverzeichnis am Ende des Buchs hätte ein wenig umfangreicher sein können. Dessen ungeachtet darf man das Buch uneingeschränkt empfehlen – es macht auch einfach Spaß, darin zu lesen!

















