Man kann sich viele Bücher zum Thema Qualitätsverbesserung in IT-Projekten zulegen, manchmal kann man während der Lektüre sogar was lernen, in den wenigsten Fällen hat man es dabei mit konkreten Programmiersprachen zu tun und noch viel weniger sind in Deutsch.
Da scheint es ein wahrer Lichtblick zu sein, dass zwei der bekanntesten PHP-Experten das Standardwerk zur Qualitätsverbesserung und -sicherung noch einmal überarbeitet haben, teilweise sogar neu geschrieben haben. Herausgekommen ist ein absolutes „must-have“.
Sebastian Bergmann und Stefan Priebsch beschreiben auf circa 460 Seiten, worauf der Qualitätsbewusste PHP-Entwickler achten muss und soll. Angefangen vom „Was ist denn eigentlich Qualität und wie kann man diese Messen?“ über „und warum ist das wichtig?“ bis hin zum „Wie sag ich’s meinem Kunden“ schreiben beide in einem lockeren Stil über eines der komplexesten Themen innerhalb des Programmieralltags.
„Softwarequalität in PHP-Projekten“ ist sicherlich kein Buch zum einfachen „runter lesen“, sondern man ertappt sich öfters dabei, eine Seite nun das x-te mal gelesen und dann doch noch das Gefühl zu haben, etwas nicht richtig verstanden zu haben. Kleiner Tip: Hier hilft es sehr, die Beispiele wirklich abzutippen und das Thema mal auszuprobieren. Frei nach dem Motto „Probieren geht über Studieren“ lösen sich dann die Fragen meist in Erkenntnis auf.
Schön zu lesen sind auch die Fallbeispiele von Typo3, Zend Framework und allen weiteren. Auch die „großen“ machen Fehler und manche lassen sich hier nachlesen. Das schöne Gefühl von „die konnten es auch nicht sofort“ stellt sich ein und lässt einen etwas beruhigter zurück.
Meine Favoriten waren die Kapitel über „Legacy Code“, „Kontinuierliche Integration“ und „Bad Practices“. Ich persönlich fand ich den präsentierten Legacy Code zwar nicht legacy genug, aber das liegt sicherlich auch an mir und meinem Background. Übertragbar sind trotzdem viele der Wege und Tips auf (noch viel) älteren Code – alles schon ausprobiert 😀
Will man nun was negatives finden, man könnte anbringen, dass die Beispiele in sich manchmal nicht konsistent sind oder der eigentlich Kern, was Bergmann und Priebsch sagen wollen, nicht immer anhand der Beispiele ersichtlich wird. Hier und da hätten die Beispiele kürzer, dafür mehr auf den Kern reduziert sein können, es hätte zu etwas schnelleren „Aha!“-Momenten geführt. Aber das wäre jammern auf einem sehr hohen Niveau. Dieses Buch richtet sich definitiv nicht an Einsteiger, die sich an solchen Dingen stören würden; es richtet sich vor allem an Profis oder interessierte Fortgeschrittene, die sich noch weiter verbessern wollen, noch näher an den „perfekten Code“ kommen wollen. Und dieses Wissen zu vermitteln schafft dieses Buch locker.
Mein Tip: Kaufen, Lesen, Verstehen (nicht auswendig lernen). Ich habe selten so ein gutes (Fach-)Buch gelesen! Wenn ihr nur wenig Budget zur Verfügung habt, euch aber die Qualität eures Codes (und eures Handwerks) nicht egal ist, dann kauft dieses Buch. Ihr werdet sehr lange Lesefreude daran haben und euer Code wird es euch danken.
tl;dr: Unbedingt kaufen und verinnerlichen