Ben, java fait le distinguo entre l'interface et la classe, et c'est, quelque part, la "pirouette" qui lui a permis d'interdire l'héritage multiple
Parce que, il faut bien se rendre compte que, bien que les mots clés soient différents, le fait d'implémenter une interface java est en réalité... un héritage caché
Ce qui est peut être encore pire, car, en gros, cela revient à dire "c'est interdit, mais faites le quand même (sans vous en rendre compte )": la logique du raisonnement m'échappe quelque peu
Je suis entièrement d'accord avec le fait qu'il est souvent largement préférable de recourir à l'agrégation plutôt qu'à l'héritage (surtout si cela le fait devenir multiple ), mais, dans certains cas, l'agrégation devra viser à... exposer quasiment l'ensemble de ce qui aurait de toutes manière été exposé si l'héritage multiple avait été utilisé, et là, c'est "se faire du mal" pour pas grand chose
Même si je suis d'accord sur le fait que les cas dans lesquels l'héritage multiple est intéressant sont pour le moins rares, je considère comme une erreur que de vouloir l'interdire.
Peut-être ai-je une trop haute estime du "commun des développeurs", mais je trouve que c'est au développeur de placer ses limites, et qu'elles ne doivent pas être imposées par le langage, tout comme je trouve que l'idée de déresponsabiliser le développeur est un pas dans la mauvaise direction que trop de langages ont fait...
Partager