Comment se sortir du legacy ?
Stratégies complètes pour moderniser le code legacy : prévention, techniques de refactoring et méthodes spécialisées (Mikado, Golden Master, Smoke Testing) présenté par Smaïne Milianni

Cette sketchnote résume la présentation Comment se sortir du legacy ? par Smaïne Milianni lors de l'API Platform Conference 2024, proposant une approche méthodique pour moderniser et maintenir le code legacy avec des stratégies préventives et curatives.
Contenu
Smaïne définit d'abord le legacy comme un triptyque : vieux code, code rentable, et code sans test. Il présente une approche préventive structurée autour de cinq piliers : tests FIRST (Fast, Isolated, Repeatable, Self-validating, Thorough/TDD), Quality Tools (Psalm, PHPStan, SonarQube), Code Review (petites PR, livraisons fréquentes), Dette Technique (à rembourser vite et ne pas trop contracter), et Clean Code (SOLID, KISS, DRY).
La présentation détaille des tips pratiques comme migrer les tableaux associatifs en DTO, appliquer les Boy Scout Rules (rendre le code plus propre que quand on l'a trouvé), et automatiser les mises à jour des dépendances. Smaïne introduit également des méthodes spécialisées : Méthode Mikado (découper en petites tâches pour livrer souvent), Golden Master Testing (1. enregistrer le résultat du code, 2. écrire le test qui valide le résultat, 3. refactor le code), et Smoke Testing (identifier des tests clés et les réduire régulièrement).
Points clés à retenir
- Legacy défini : Triptyque vieux code + code rentable + code sans test nécessitant une approche méthodique
- Prévention 5 piliers : Tests FIRST, Quality Tools, Code Review, Dette Technique maîtrisée, Clean Code (SOLID/KISS/DRY)
- Tips pratiques : Migration DTO, Boy Scout Rules, automatisation des mises à jour de dépendances
- Méthodes spécialisées : Mikado (petites tâches), Golden Master Testing (enregistrer→tester→refactor), Smoke Testing (tests clés réduits)