Apprivoiser le code legacy : Un résumé de "Working Effectively with Legacy Code" de Michael Feathers

Cet article résume les idées centrales du livre classique de Michael Feathers, "Working Effectively with Legacy Code". L'ouvrage soutient que le cœur du problème du code legacy est l'absence de tests. Pour modifier le code legacy en toute sécurité, il faut d'abord ajouter des tests. Ceci est un défi car ajouter des tests nécessite de modifier le code, créant un paradoxe. Le livre décrit les étapes pour identifier les points de modification (Seams), briser les dépendances, écrire des tests et refactoriser, ainsi que des techniques de test incrémental (Sprout et Wrap) et une technique pour comprendre rapidement le code (Scratch Refactoring). L'auteur souligne l'importance des tests unitaires et présente les tests de caractérisation pour capturer le comportement du code existant. Enfin, l'article conseille d'éviter la dépendance directe aux implémentations de bibliothèque pour réduire les coûts de maintenance.