@carotene512 依存関係を逆転すると、制御も含めて完全に渡してしまえるというのがあります
普通の関数呼び出しの場合、呼び出し元に帰ってくるので、例えばMVCだとControllerでModelを呼び出してしまうと、スタック的な意味でControllerに戻ってきてしまうんですよ
同じような事がViewにも言えるんですが、ModelがどのViewを呼び出すかをModelの中で決めるロジックを書いてしまうと、ModelとViewが密結合になってしまいます
そこで、Viewのプロパティや引数などの形式でModelを渡して欲しいものの、その制御を"どのオブジェクトの中でもやりたくない"というような場合などに、依存性注入が威力を発揮します
詳しい初期化とかを一切書かずに、処理されたものが勝手に詰まってくれるような(一部のORMが生成するModelとかデータオブジェクトを、テンプレートとかViewで呼び出す時は、そういう感じですよね)
Conversation
Notices
-
( ᐛ) まりなっピ (sasanquaneuf@qiitadon.com)'s status on Sunday, 22-Jul-2018 19:07:55 JST
( ᐛ) まりなっピ
- ひだお初段@Qiitadon repeated this.