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