Bonjour,
Dans un monde où la POO est employée à toutes les sauces, dont certaines sont mauvaises, on voit des principes essentiels de programmation orientée objet bafoués.
L'un d'entre eux est le Principe de Substitution de Liskov (Liskov Substitution Principle, LSP).
En quoi consiste-t-il ?
Introduit en 1987[1] par Barbara Liskov, le principe de substitution de Liskov est, formellement, le suivant :
Si une propriété P est vraie pour une instance x d'un type T, alors cette propriété P doit rester vraie pour tout instance y d'un sous-type de T
où dans notre cas les sous-types de T sont les classes qui dérivent de T.
Moins formellement, il s'agit en fait que l'on puisse remplacer dans un code source toute instance de type Mere par une instance d'un type Fille qui dérive de Mere sans altérer en quoique ce soit la caractère correct du programme.
La question est donc : suivez-vous ce principe dans vos hiérarchies de classes C++ ? Que pensez-vous de ce principe ? Lui trouvez-vous une utilité ? (j'espère )
[1] Voir : http://citeseer.ist.psu.edu/cache/pa...ov94family.pdf
Débat C++ : Suivez vous le principe de substitution de Liskov en POO ?
Débat C++ : Suivez vous le principe de substitution de Liskov en POO ?
Le , par Alp
Une erreur dans cette actualité ? Signalez-nous-la !