Préférez la composition au cours de l'héritage?

Pourquoi préférer la composition au cours de l'héritage? Ce compromis, il y a pour chaque approche? Quand devriez-vous choisir d'héritage sur la composition?

  • Voir aussi la classe dont le design est mieux
  • Il y a un bon article sur la question ici. Mon opinion personnelle est qu'il n'existe pas de "meilleur" ou "pire" principe de conception. Il est "approprié" et "l'insuffisance" de la conception de la tâche concrète. En d'autres termes - je utiliser à la fois l'héritage ou de la composition, en fonction de la situation. L'objectif est de produire de plus petites code plus facile à lire, de réutilisation et de s'étendre plus loin.
  • en une phrase l'héritage est public, si vous avez une méthode publique et de la changer ça change de la publication de l'api. si vous avez de la composition et de l'objet composé a changé, vous n'avez pas à changer votre api.
InformationsquelleAutor Readonly | 2008-09-08