Style de code
Cette page récapitule les conventions de code utilisées dans LogiDAV. Le guide canonique est CODING_STYLE.md à la racine du projet.
Principes
- Préférer du code lisible et maintenable aux raccourcis astucieux
- Garder les changements ciblés et cohérents avec le bundle environnant
- Favoriser les dépendances explicites et les effets de bord prévisibles
- Traiter les cronjobs, files d'attente, expéditions, paiements et mises à jour de stock comme des flux à haut risque — coder défensivement
PHP et formatage
- Compatibilité PHP 7.3
- Suivre PSR-2 / PSR-12
- 4 espaces, pas de tabulations, UTF-8, fins de ligne Unix
- Syntaxe courte de tableau :
[] - Imports propres, supprimer les imports inutilisés
Les règles de formatage proviennent de .php-cs-fixer.php à la racine.
Symfony et architecture
- Garder les services sans état quand c'est possible
- Utiliser l'injection par constructeur plutôt que les lookups de container
- Aligner les namespaces avec la structure des bundles
- Noms basés sur les rôles :
*Service,*Command,*Controller,*Repository
Doctrine et sécurité des workflows
- Garder la logique de requêtes dans les repositories
- Garder les transactions courtes
- Éviter les grands jeux de résultats en mémoire dans les batchs
- Être particulièrement prudent dans les workflows qui modifient les ventes, remboursements, expéditions et le stock
Tests et documentation
- Repliquer les namespaces source sous
tests/ - Suffixe
Testpour les classes de test - Ajouter des PHPDoc concis aux méthodes non triviales
- Mettre à jour la documentation quand un workflow de production change
Commandes de validation
# Formatage
php tools/php-cs-fixer/vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php
# Analyse statique
composer phpstan
# Tests
SYMFONY_DEPRECATIONS_HELPER=weak_vendors vendor/bin/simple-phpunit -c phpunit.xml.dist