依存性注入
Dependency Injection
プログラムにおいて、関数やオブジェクトが依存しているオブジェクトをオブジェクト間の結合を疎にしてテスト用のオブジェクトへの差し替えなどを容易にするためのパターン。
例えば、
関数の引数で注入する
オブジェクトのコンストラクタで与える
DIコンテナ(3rd partyのライブラリ)を使って依存関係を定義する
from: https://techblog.paild.co.jp/entry/2023/03/28/160241#f-18910f7a
『Dependency Injection Principles, Practices, and Patterns』では DI コンテナを使わない DI を「Pure DI」と呼んでいます。[