Codequalität in PHP verbessern: Unterschied zwischen den Versionen
Aus Thoms Wiki
Zur Navigation springenZur Suche springen
| Zeile 26: | Zeile 26: | ||
** EA Extended - weitere Inspections, kann automatisch fixen. <br />Zum Beispiel werden Code-Vereinfachungen auch gleich als "Weak Warning" angezeigt und müssen nicht wie üblich selbst gefunden werden. | ** EA Extended - weitere Inspections, kann automatisch fixen. <br />Zum Beispiel werden Code-Vereinfachungen auch gleich als "Weak Warning" angezeigt und müssen nicht wie üblich selbst gefunden werden. | ||
* VS-Code - PHP Intelephense | * VS-Code - PHP Intelephense | ||
== Lokale Pipleline == | |||
lokale pre-commit-hooks (git, geht das bei subversion auch?) | |||
* schnelle Schritte zuerst | |||
* kurze Ausführungszeiten | |||
* Reihenfolge | |||
** Code-Sniffer (PHP-CS-Fixer, sehr schnell) | |||
** Static-Code-Analyzer (PHPStan, PHPMD) | |||
** Unit Tests | |||
Captain Hook - einfache Konfiguration von git hooks | |||
Version vom 18. November 2023, 12:23 Uhr
Dieser Eintrag enthält meine Mitschriften zum Linkedin-Learning-Kurs. Link zum Kurs: https://www.linkedin.com/learning/codequalitat-in-php-verbessern
Verschiedene Coding-Standards, z.B: PSR12
PHP-CS-Fixer
fixes the code to follow standards
composer require friendsofphp/php-cs-fixer --dev
Statische Codeanalyse
Die statische Codeanalyse, im Englischen Static Code Analysis, untersucht ausschließlich den Quelltext unserer Software, ohne ihn ausführen zu müssen, daher statisch. Vereinfacht gesagt wird dabei der Quellcode in einen sog. AST, einen Abstract Syntax Tree, zerlegt, d.h. in einem Objektbaum, der aus den kleinsten Bestandteilen der Sprache besteht.
- PHPStan - phpstan/phpstan
- PHPMD - phpmd/phpmd
- Psalm - vimeo/psalm
Code-Editoren konfigurieren
- PhpStorm
- Inspections (bekannt)
- EA Extended - weitere Inspections, kann automatisch fixen.
Zum Beispiel werden Code-Vereinfachungen auch gleich als "Weak Warning" angezeigt und müssen nicht wie üblich selbst gefunden werden.
- VS-Code - PHP Intelephense
Lokale Pipleline
lokale pre-commit-hooks (git, geht das bei subversion auch?)
- schnelle Schritte zuerst
- kurze Ausführungszeiten
- Reihenfolge
- Code-Sniffer (PHP-CS-Fixer, sehr schnell)
- Static-Code-Analyzer (PHPStan, PHPMD)
- Unit Tests
Captain Hook - einfache Konfiguration von git hooks