Principes S.O.L.I.D - Définition

S.O.L.I.D est un acronyme signifiant :
S : Single responsability principle
O : Open/close principle
L : Liskov substitution principle
I : Interface segregation principle
D : Dependency inversion principle


Il s’agit de 5 principes, règles, qu’on peut appliquer pendant la phase de conception.

Rapidement chaque principe est définit comme suit :

  • Single responsibility principle (SRP) : une classe n’a qu’une seule responsabilité (ou préoccupation).
  • Open/closed principle (OCP) : une classe doit être ouverte à l’extension (par héritage, par exemple) mais fermé à la modification (attributs privés, par exemple).
  • Liskov subtition principle (LSP) : les objets d’un programme doivent pouvoir être remplacés par des instances de leurs sous-types sans «casser» le programme.
  • Interface segregation principle (ISP) : il vaut mieux plusieurs interfaces spécifiques qu’une unique interface générique.
  • Dependency inversion principle (DIP) : il faut dépendre des abstractions, pas des réalisations concrètes.