DRY (Don`t Repeat Yourself)
Articles
Définition
Le principe DRY, “Don’t Repeat Yourself” (Ne vous répétez pas), est une pratique de programmation qui vise à réduire la redondance dans le code. Il repose sur une question simple: « Ai-je déjà coder cette logique ? », qui est autant applicable à la logique technique que fonctionnel.
Pourquoi appliquer ce principe ?
- Il permet une maintenance plus facile de la codebase. En centralisant la logique, les modifications apportées ne doivent être effectuées qu’à un seul endroit. Si une règle de validation ou un calcul change, il suffit de modifier le code une fois, réduisant ainsi le risque d’introduire des régressions ou des désynchronisation dans le fonctionnement de votre produit.
- Il induit une réduction de la codebase. Le calcul est simple, réutiliser une méthode plutôt que de l’ajouter une nouvelle fois réduit par définition le nombre de ligne de code.
- Correctement appliqué, le principe DRY maintient une plus grande clarté et Compréhension du code. Autant par le maintient d’un nombre de ligne de code moins élevée que par des logiques centralisées.
- Il entretien également une plus grande ré-utilisabilité du code. Une logique centralisée peut être facilement appliqué dans différents modules et encourage une architecture plus modulaire.
Les risques de la mise en pratique
- Le risque principale de ce principe est … DRY lui même. Ces avantages réside dans une bonne compréhension du contexte d’utilisation. Les méthodes que vous pensez factorisées sont-elles rigoureusement identiques ? Leurs contextes d’utilisation est-il le même ? La version factorisé sera-t-elle facilement accessible ? Autant de question qui peuvent provoquer l’effet inverse.
- Une volonté d’abstraction induit une forte complexité initiale. Identifier et extraire des parties de code redondantes peut nécessiter une réflexion et une planification supplémentaires, augmentant la complexité initiale du projet. Il n’est pas toujours judicieux de trop anticiper des besoins.
- Une abstraction excessive peut rendre le code plus difficile à comprendre et à suivre. Si la logique abstraite devient trop générique, elle peut devenir difficile à utiliser et à maintenir, rendant le code plus compliqué que nécessaire.
- Une abstraction excessive peut également engendré du couplage indésirable entre différentes parties du code. Des modules ou composants qui dépendent fortement d’une logique centrale peuvent devenir difficilement modifiables sans affecter d’autres parties du système.
Conclusion
Le principe DRY offre de nombreux avantages, notamment en termes de maintenance, de réduction des bugs, et de clarté du code. Cependant, il doit être appliqué de manière judicieuse. Il faut éviter les pièges de l’abstraction excessive et du couplage indésirable. En équilibrant les bénéfices de la centralisation avec les risques de complexité accrue, les développeurs peuvent appliquer le principes DRY pour améliorer la qualité et la maintenabilité de leur codebase.