簡単なDIコンテナ
最小のDIコンテナ in PHP – anatoo勉強記より。
DIコンテナがなにやら大仰なものとして勘違いされているような気がしたので、機能を極限まで削ぎ落とした最小のDIコンテナを書いた。 これにはAOPは当然ないし、設定ファイルなどもない。
30行ほどのコードでDIコンテナっぽい動きを示せているところは素晴らしいです。確かにDIコンテナにAOPは必須ではないし、設定ファイルもできればない方がいいですもんね。
ただ、「最初の取っ掛かり」ということで極限まで簡略化されたのでしょうが、異なるコンポーネント間のDependencyをInjectionできないものはDIコンテナではなくて単なるオブジェクトプールのような気がします。簡単なsetterインジェクションをする場合なら、こんな感じでしょうか。
これはこれで設計的にヘンなところが色々ありますが、このくらいのコードだとこれくらいが機能的に限界かなあ。
