Polymorphisme de sous-typage et notion d’héritage #
Nous allons aborder les avantages de la POO du point de vue de l’extensibilité et de l’abstraction. Ces deux caractéristiques permettent de produire un code modulaire, maintenable et évolutif.
Nous étudierons en quoi l’héritage nous permet de concevoir un code permettant d’obtenir facilement ces deux caractéristiques en nous aidant polymorphisme.
Nous apprendrons que l’héritage est un couplage très fort et qu’il faut l’éviter à tout prix sauf si notre objectif est justement une bonne abstraction ou un code extensible. Nous favoriserons toujours l’héritage comportemental, c’est-à-dire basé sur le respect d’un contrat en termes de fonctionnalités plutôt qu’un héritage structurel.
Ce que vous allez apprendre #
- Extensibilité et mécanismes d’abstraction
- interfaces, classes abstraites
- Retour sur le polymorphisme
- de sous-typage et ad-hoc
- Réaliser une conception basée sur l’héritage ou alors l’interdire
- Les dangers de l’héritage