Skip to content

DIコンテナ

AiletS edited this page Jul 24, 2024 · 1 revision

DIとは

  • 外部から必要なインスタンスを渡すのがDI(Dependency Injection)
  • これを自動で行ってくれるのがDIコンテナ

使い方

  • 事前に使いたいものをコンテナに登録しておく。
  • アノーテーションで指定する。[inject]

DIコンテナのメリット

  • 実装(instance)に依存せず、抽象(interface)にのみ依存しているため実装の差し替えが行える。
  • あるクラスの機能を使うにはの宣言が必要であり、依存関係がわかりやすい。
  • その結果不要なクラスの利用がなくなり、役割分担が明確になる。

DIコンテナの注意点

網の目依存

  • DIコンテナで管理されているオブジェクトを思うままに関連付けすると、実際にはありえないような依存関係を作り出してしまう。
  • そのため何でもかんでもDIコンテナに登録してはいけない。

今回はDIコンテナとして

Clone this wiki locally