私は依存性注入が何であるか理解していますが、それでも消費者にとってどのように役立つかという点でまだ完全な画像は見ていません。以下の例を参照してください。依存性注入フレームワーク - 依存性伝播
//bad
class car() {
var tire = new Tire('snow');
}
//good
class car() {
var tire;
constructor(tire){
this.tire=tire
}
}
だから、ほとんどの記事は、私はそれが車からタイヤの依存関係を解消し、よりテスト可能となるので、上記の例が良好であることの状態を読みました。しかし、車オブジェクトをインスタンス化する他のクラスはどうでしょうか。 driver
クラスがcar
クラスを呼び出すのであれば、ドライバはcar
オブジェクトとtires
もインスタンス化するように強制しません。それは依存関係が常により深く伝播していくかのようです。これはどこですか?オブジェクトを実際にインスタンス化するのは何ですか?これは、DIフレームワークはすべてについてですか?
一言で言えば:はい、それはずっと進んでいますし、それが単純化するためのDIフレームワークです。 – deceze