PHP-Training mit PHPStan, Codestandard und Captain Hook

Mit statischer Codeanalyse zuverlässige Software im Team entwickeln

Statische Codeanalyse hat viele Vorteile gegenüber anderen Testverfahren wie den Acceptance-Tests oder Integration-Tests mit Codeception. Sie kann nicht nur ganz einfach lokal mit der Kommandozeile auf bestimmte Verzeichnisse oder Dateien ausgeführt werden, sondern ist zudem noch extrem schnell und sehr zuverlässig.


 

PHPStan im Einsatz für PHP-Projekte

Ist die PHP-Applikation erfolgreich mit PHPStan als Tests für eine statische Codeanalyse abgedeckt, wird im nächsten Schritt als Team gearbeitet, um eine bessere Softwarequalität zu erreichen. 
 

Den Anfang bildet der Codestandard. Dieser definiert in einem Ruleset, wie der Code geschrieben werden soll. Das sorgt für ein einheitliches Ergebnis, was unter anderem das Setzen der Klammern oder Einrückungen und Schreibweisen von Arrays betrifft. Ein PHP-Codestandard kann dabei sogar automatisch viele fehlende oder falsche Formatierungen beheben. In Kombination mit PHPStan ist der PHP-Code-Beautifier ein hervorragendes Werkzeug.

PHP-Codestandard als Basis für ein besseres Teamwork

Je nach Größe und Zustand des eigenen PHP-Projekts kann es sein, dass man nicht alle Regeln eines PHP-Codestanderds, wie PSR-2, umsetzen kann. An dieser Stelle ist ein eigenes Regelwerk sinnvoll. Hier lassen sich Regeln aus dem Ruleset anpassen oder auch aus anderen Standards hinzufügen. Das ist eine vielversprechende Möglichkeit sich als Team auf Standards zu einigen ohne in ein bestehendes Regelwerk gezwungen zu werden. Wir schauen uns gemeinsam praktische Beispiele an, wie man diese am besten einrichtet und in Projekten einsetzt.
 

Captain Hook - Ein Tool das PHP-Entwickler einfach glücklich macht

Die statische Codeanalyse dauert nur wenige Millisekunden und lässt sich automatisch mit einem GitHook vor dem eigenen Commit ausführen. Der Entwickler erhält dadurch extrem schnelles Feedback zu seinem Code und nicht erst aus einer Build Pipeline, nachdem länger andauernde Prozesse angelaufen sind. Das beschleunigt den eigenen Entwicklungsprozess enorm. Mit dem Open-Source-Projekt Captain Hook sind GitHooks zügig eingerichtet und können über die Versionskontrolle Git im Projekt direkt abgebildet werden. So müssen Entwickler keine weiteren Schritte ausführen und können es direkt einsetzen. 

Wir hatten jetzt hier zwei Tage eine ziemlich geile Schulung beim Roland

Wir haben die Basis für Codeception und unsere zukünftigen GitLab Pipelines gelernt. Das geile war, dass wir das direkt im eigenen Projekt gemacht und alle direkt mit der Funktastatur mitgemacht haben.

Jan Rexer - Entwickler und Projektmanagement (RHEINPFALZ)
Ablaufplan
Inhalt Art
PHP-Gruppenschulung mit Captain Hook und PHPStan
Statische Code Analyse und Softwarequalität in PHP-Projekten Theorie
Ziele guter Software und eines agilen Entwicklungsprozesses Theorie
PHPStan für die statische Codeanalyse und Testbasis Theorie
Einführung in PHP Codestandards und Codesniffer Theorie
PHPStan im praktischen Einsatz von Level 1 bis Level 3 Team
Refactoring von Legacy Code mit dem PSR-2 Codestandard Team
Prehooks mit Captain Hook für effektive Softwareentwicklung Team
GitLab Pipeline mit Continuous Delivery Workflow Team