Code Mort
Code qui n'est jamais exécuté à l'exécution, incluant le code inaccessible, les fonctions non utilisées et le code caché derrière des conditions toujours fausses.
Definition
Le code mort prend plusieurs formes: code inaccessible (après return/throw), fonctions/classes non utilisées, code derrière des feature flags jamais activés, et code zombie (blocs commentés gardés "au cas où"). Il s'accumule à travers les suppressions de fonctionnalités, le refactoring et le turnover des développeurs.
Pourquoi c'est important
Le code mort augmente la charge cognitive, la taille des bundles et la charge de maintenance. Les développeurs perdent du temps à lire et maintenir du code qui ne s'exécute jamais. Il peut aussi cacher des vulnérabilités de sécurité ou donner une fausse confiance dans la couverture de tests.
Exemple
Une fonction sendLegacyEmail() a été remplacée par sendEmail() il y a 2 ans mais jamais supprimée. Elle n'est jamais appelée mais les développeurs la lisent encore en cherchant la logique email. L'analyse statique la marque comme non utilisée.