next up previous
suivant: Concevoir évolutif monter: Mode d'emploi précédent: Spécification des interfaces d'objets

Comparaison entre héritage de classe et héritage d'interface

L'héritage de classe définit l'implémentation d'un objet à partir de l'implémentation d'un autre objet. C'est un mécanisme de partage de code et de la représentation.

L'héritage d'interface (sous-typage), décrit comment un objet peut être utilisé à la place d'un autre. Il réduit de façon significative l'interdépendance des implémentations d'un sous-systèmes à l'autre.

Principe : Programmer pour une interface, non pour un développement.

Cela conduit d'une part à ne pas déclarer les variables comme instances de classes concrètes, mais comme se conformant à une interface; d'autre part à l'utilisation des modèles créateurs.

Les deux techniques les plus courantes pour la réutilisation sont :

Principe : Préférer la composition d'objets à l'héritage de classes.


next up previous
suivant: Concevoir évolutif monter: Mode d'emploi précédent: Spécification des interfaces d'objets
Alain Griffault 2002-10-22