Principe de substitution de Liskov

Infos
En programmation orientée objet, le principe de substitution de Liskov est une définition particulière de sous-type qui a été introduite par Barbara Liskov et Jeannette Wing dans un papier titré Family Values: A Behavioral Notion of Subtyping. (Ce n'est pas la seule définition; voir type.) Ce principe a été formulé de manière succincte dans un autre comme suit : :Soit q(x) une propriété prouvable à propos des objets x de type T alors q(y) est vraie de tou
Principe de substitution de Liskov

En programmation orientée objet, le principe de substitution de Liskov est une définition particulière de sous-type qui a été introduite par Barbara Liskov et Jeannette Wing dans un papier titré Family Values: A Behavioral Notion of Subtyping. (Ce n'est pas la seule définition; voir type.) Ce principe a été formulé de manière succincte dans un autre comme suit : :Soit q(x) une propriété prouvable à propos des objets x de type T alors q(y) est vraie de tous les objets y de type S où S est un sous-type de T. Donc la notion de sous-type par Liskov et Wing est fondée sur la notion de substitutiabilité. C’est-à-dire que si S est un sous-type de T alors on peut substituer des objets de type S à des objets de type T sans altérer les propriétés désirables d'un programme (par exemple l'exactitude).

Conception par contrat

Le principe de subsitutiabilité de Liskov est étroitement relié à la méthodologie de programmation par contrat aboutissant à des restrictions qui spécifient comment les contrats peuvent interagir avec l'héritage :
-Les préconditions ne peuvent pas être renforcées dans une sous-classe. Cela signifie que vous ne pouvez pas avoir une sous-classe avec des préconditions plus fortes que celles de sa superclasse.
-Les postconditions ne peuvent pas être affaiblies dans une sous-classe. Cela signifie que vous ne pouvez pas avoir une sous-classe avec des postconditions plus faibles que celles de sa superclasse. De plus, le principe implique que des exceptions d'un type nouveau ne peuvent pas être levées par des méthodes de la sous-classe, sauf si ces exceptions sont elles-même des sous-types des exceptions lancées par les méthodes de la superclasse . Voir covariance et contravariance. Une fonction utilisant la connaissance de la hiérarchie de classe viole le principe car elle utilise une référence à la classe de base, mais doit aussi avoir connaissance des sous-classes. En effet, une telle fonction viole le principe ouvert/fermé car elle doit être modifiée quand on crée une classe dérivée de la classe de base. ==
#
Accident de Beaune   Amélie Mauresmo   Anisocytose   C3H6O   CA Paris   Carole Richert   Catherinettes   Chaleur massique   Championnat de Tunisie de football D2   Classement mondial des entreprises leader par secteur   Col du Bonhomme (Vosges)   De viris illustribus (Lhomond)   Dolcett   EGP  
^