Slide 33
Slide 33 text
CakePHPにDIコンテナがやって来た!
・4.2系からDIコンテナが導入される!
・2020/12/11時点でRC1版がリリース
・ちなみにコンストラクターインジェクションではなく、メソッドインジェクションが採用された
・ライブラリとしては「league/container」を利用
・PSR-11に準拠していれば、ライブラリは差し替えることが出来そう
・「EntryPoint」(Controller, Command)のみDIすることが出来る
・View, Helper, Table, Mailer, Behaviorは出来ない(アプリケーション層から遠くDIする難易度が高いため)
・DIコンテナの持つ自由度とCakePHPの持つ制約を両立させた?