Open Source im professionellen Einsatz

Mehr Qualität in der PHP-Entwicklung

28.10.2010

Längst sind Entwickler, die PHP verwenden, keine Spaghetti-Programmierer mehr. Sie setzen auf Objektorientierung, Frameworks und Standards. Das Buch "Softwarequalität in PHP-Projekten" widmet sich der Qualitätssicherung.

Die Autoren und Herausgeber Sebastian Bergmann und Stefan Priebsch betreiben die Beratungs- und Schulungsfirma ThePHP.cc und haben bereits einige Bücher zum Thema PHP publiziert. Bergmann ist zudem der Autor des Testing-Frameworks PHPUnit.

Das Buch steigt in das Thema mit der Definition von Softwarequalität ein, die externe Kriterien wie Funktionalität und Bedienungsfreundlichkeit und interne wie Wartbarkeit umfasst. Schon hier gibt es einen kurzen Überblick über für PHP geeignete Tools wie Phploc oder Phpcpd. Darauf folgt ein einführendes Praxisbeispiel zur Verwendung von PHPUnit.

Im weiteren Verlauf fungiert das Buch als Sammelband, in dem Vertreter von Open-Source-Projekten und Firmen von Ihren Erfahrungen berichten. Robert Lemker und Karsten Dambekalns von der Typo-3-Foundation beispielsweise reflektieren die testgetriebene Entwicklung von Version 5 des Content-Management-Systems. Neben Unit-Tests setzten sie auf Inline-Dokumentation und Continuous Integration, also automatisierte Builds des aktuellen Code-Bestands. Daneben sorgten Standards bei der Benennung von Methode- und Klassennamen für Übersichtlichkeit. Listings der Testrezepte machen das Vorgehen anschaulich.

Doch auch das Testen an sich kann eine Fehlerquelle darstellen: Benjamin Eberlei zeigt in seinem Beitrag, wie sich typische Fehler beim Schreiben von Unit-Tests vermeiden lassen. Tobias Schlitt hat an der Webdav-Komponente für EZ-Publish gearbeitet und demonstriert, wie er Probleme mit Wireshark und Cadaver aufspürte und Akzeptanztests mit PHPUnit durchführte. Ebenfalls zu EZ Components gehört die Erweiterung Ezcgraph, an der Kore Nordmann das Testen von Grafikausgaben vorstellt.

Zu den weiteren Themen der Beiträge gehören Interaktion mit Datenbankenund die Qualitätssicherung bei der Online-Community StudiVZ, bei der sogar eine eigens entwickelte Domain Specific Language (DSL) zum Einsatz kommt. Außerdem behandelt der Band agile Arbeitstechniken und Extreme Programming (XP) in Hinsicht auf Code-Qualität. Zu den vorgestellten Software-Tools gehören Selenium, Hudson und Cruise Control. Brian Shire, Kernentwickler des Caches APC, arbeitet mit Apachebench, Pylot, Callgrind, Xdebug und dem Kernel-Tool Oprofile an der Performance von PHP-Anwendungen. Ein kurzer Anhang gilt der PHP-Security.

In den vorgestellten Beispielen wird mancher PHP-Entwickler Gemeinsamkeiten zu seinem eigenen Projekt erkennen. Dieses Buch zeigt aber auch, dass maßgeschneiderte Anwendungen nach ebenso passenden Test- und QS-Werkzeugen verlangen. Wer ein professionelles PHP-Projekt leitet oder maßgeblich daran mitwirkt, sollte sich dieses Buch ansehen.

Sebastian Bergmann, Stefan Priebsch
Softwarequalität in PHP-Projekten
Hanser, 2010
530 Seiten
ISBN 978-3-446-41923-0
50 Euro (D)

auch als E-Book verfügbar

(
)

Ähnliche Artikel

  • Coverity lobt Code-Qualität von Kernel und HBase

    Die Code-Analyse-Spezialisten der Firma Coverity haben ihren Bericht über die gescannte Open-Source-Software für das vergangene Jahr veröffentlicht.

  • TDD

    Das Credo des Test Driven Development (TDD): Wer zuerst Tests schreibt und dann erst programmiert, erzeugt sauberen Code und geprüfte Programme. Wie das in Java und weiteren Sprachen geht, zeigt dieser Artikel, der auch die Vor- und Nachteile der Methode abwägt.

  • PHP-Bausteine

    Mit eZ-Components gibt es eine freie Enterprise-PHP-Bibliothek, die auf moderne Sprachfeatures von PHP 5 setzt. Dieser Auszug eines Artikels aus dem aktuellen Linux-Magazin-Sonderheft "Scripting 2.0" zeigt, was damit möglich ist, im Web wie auch auf der Konsole.

  • Coverity: Python hält exzellente Code-Qualität

    Eine Analyse des Quelltext-Spezialisten Coverity stellt der Standardimplementierung von Python ein hervorragendes Qualitätszeugnis aus.

  • PHP Unit

    Unit-Tests sorgen für funktionierende und wartbare Software. Dieser Artikel zeigt PHP-Entwicklern, wie sie mit dem Tool PHP Unit den Einstieg in die testgetriebene Entwicklung finden.

comments powered by Disqus