DB Magazine 10月号(古!)の『柔軟なシステムを作成するためのC♯によるオブジェクト指向開発の実践』という記事で、少し気になる記述があったので、ちと書いてみます。 「なお、継承は、ポリモーフィズム(多態性)を利用するときのみ使用するのが基本となっている。」 「オブジェクト指向による設計では、既存クラスを継承することはあまりない。」 ということで、たしかにJavaやC#によるプログラミングでは委譲によって実装の再利用を行うことが定石となっています。継承はポリモーフィズムのための手段でしかないのかもしれません。記事はC#に関するもので、その意味では問題視するほどの記述ではありません。ただ、これだけ言い切られてしまうと、オブジェクト指向入門的な内容とも相まって誤解する人が増えるのでは、と気になりました。 本当に「継承は悪で、委譲は正義」なのか? これは言語の制約によるものです。ここで