generated at
継承

継承よりコンポジション」という格言もあるように、昨今では人気がない。

hr
時折インターネットで論争を引き起こすテーマのひとつ koma
GoFのデザインパターン(『オブジェクト指向における再利用のためのデザインパターン』)は継承を使ったパターンが多く載っているが、現代でも頻繁に使われる継承を使ったデザインパターンというのはTemplate Method パターンくらいじゃないかという話を和田卓人fukabori.fm ep.49 でしていた。koma
とはいえ、同じエピソードで、GoF本のポイントは「オブジェクト指向プログラミング=継承による差分プログラミング」という誤解を払拭して、コンポジションなどを使って「インタフェースに対してプログラミングする」ということを示したことにあるとも言われている。koma
差分プログラミングをやるために継承を使う場合、サブクラスはスーパークラスの実装に依存してしまうが、コンポジションにすれば依存するのはインタフェースに限定できる。