SOLID (informatique)
En programmation orientée objet, SOLID est un acronyme mnémonique qui regroupe cinq principes de conception destinés à produire des architectures logicielles plus compréhensibles, flexibles et maintenables. Les principes sont un sous-ensemble de nombreux principes promus par l'ingénieur logiciel et instructeur américain Robert C. Martin.
Pour les articles homonymes, voir Solid.
Bien qu'ils s'appliquent à toute conception orientée objet, les principes SOLID peuvent également former une philosophie de base pour des méthodologies telles que le développement agile ou le développement de logiciels adaptatifs.
La théorie des principes SOLID a été introduite par Martin dans son article Design Principles and Design Patterns de 2000, bien que l'acronyme SOLID ait été introduit plus tard par Michael Feathers[1].
Principes
- Responsabilité unique (Single responsibility principle)
- une classe, une fonction ou une méthode doit avoir une et une seule responsabilité
- Ouvert/fermé (Open/closed principle)
- une entité applicative (classe, fonction, module ...) doit être fermée à la modification directe mais ouverte à l'extension
- Substitution de Liskov (Liskov substitution principle)
- une instance de type T doit pouvoir être remplacée par une instance de type G, tel que G sous-type de T, sans que cela ne modifie la cohérence du programme
- Ségrégation des interfaces (Interface segregation principle)
- préférer plusieurs interfaces spécifiques pour chaque client plutôt qu'une seule interface générale
- Inversion des dépendances (Dependency inversion principle)
- il faut dépendre des abstractions, pas des implémentations
Voir aussi
Articles connexes
Liens externes
- Bonnes pratiques objet en .net : Introduction aux principes SOLID sur Developpez.com
- Les principes SOLID
- Présentation des principes SOLID
- Le principe SOLID sur Essential Developer Skills
Notes et références
- Portail de l’informatique