DIとAOPも開発(ブラッシュアップ)中なのです。。。
今、作成中のフレームワークでは、DIとAOPは必須の技術ではないのですが、機能は提供します。
DIとAOPの機能は、分離した形で提供します。
正確に言うと、以下の3パターンの利用が可能になります。
1.DIコンテナの機能を提供にします。
2.DIコンテナで取得したコンポーネントにアスペクトする機能(AOP)を提供します。(DI+AOPの考え方ですね)
3.newしたオブジェクトにアスペクトする機能を提供します。
まぁ、3以外は一般的な機能ですね。。。3の機能も一般的なのかな...(^^;)
現在は、DI,AOPの設定は、XML形式しか実装できていないのですが、XML以外の設定方法を検討中…
利用者からするとXML形式の設定は、どうしても突っつき難いみたいなので…
冒頭でも書きましたが、DI&AOPは任意で利用すれば良いと思っているのですが、機能が無いと困るという方もいると思うので、別々のフレームワークとして開発します(オール・イン・ワンである事のメリット)。
DIだけ利用したいプロジェクトでは、「EzContainer」を入れれば良くて、AOPだけ利用したいプロジェクトでは「EzAOP」だけ入れれば良い。
1.DIコンテナ・フレームワーク(EzContainer)
2.AOPフレームワーク(EzAOP)
って言うスタイルです。
注意:DI,AOPは、他のフレームワークを利用する事は、もちろん可能です(^^)