インジェクターはなるべく使用しない (できれば1回だけ)
Ray.Diは Injector
のビルトイン束縛がありますが、あまり使用しないでください。
コンストラクターを通して、他の注入オブジェクトにインジェクターを渡さないようにしましょう。 (これは “インジェクターを注入する” とも呼ばれます) 依存関係は静的に宣言した方が良いでしょう。
インジェクターを注入することで、事前にRay.Diが依存関係の解決が可能か知ることができなくなります。
なぜなら、インジェクターから直接インスタンスを取得できるからです。
依存関係が正しく設定されていなくて、インジェクターを注入していない場合には、Ray.Diのコンパイルで依存解決の失敗を検知できます。
しかし、もしインジェクターを注入している場合には、Ray.Diは実行時(コードがgetInstance()
を遅延実行する時)に、Unbound
例外が出て依存解決が失敗するかもしれません。