Closed3
Reactでなぜ継承がよくないのか
公式サイトにはこう書いてある。
React は強力なコンポジションモデルを備えており、コンポーネント間のコードの再利用には継承よりもコンポジションをお勧めしています。
継承が良くない理由が気になったのでいろいろと集めてみます。
Don’t Use Inheritance in React
ここで述べている問題は2つ
- そのコンポーネントにメソッドがなければ、親にメソッドがある可能性があるので、親まで辿らないと行けない。不必要に複雑になっている。
- 新しいコンポーネントを作成するときに、単に親のコンポーネントがもつメソッドの一つを利用したいとする。その場合でも親のコンポーネントの持つ全てのメソッドを渡す必要があり、親と密接にカップリングしてしまう。
- 上記2の場合で、仮にその新しいコンポーネントがすでに他の親を継承していた場合、依存は1つまでなので、その親のコンポーネントを継承できない。継承先の親をさらに継承させるなどチェーンのようにする必要があるが、そもそもコンポジションを利用すれば最初からそのような問題になることもない。
What are the motivations behind not using inheritance?
このスクラップは2021/03/21にクローズされました