-Inject Dependency機能(1)

ひがさんが今日のBLOGでS2ContainerとTapestryなどのプレゼンテーションフレームワークとの連携で、一考しています。

インスタンスの作成は、プレゼンテーションフレームワークにまかせ、IoCコンテナは、Dependency Injectionに専念すればよいと。具体的に、S2Containerに次のメソッドの追加を考えています。

injectDependency(Object component)
injectDependency(Object component, Class componentClass)
injectDependency(Object component, String componentName)

from ひがやすおの日記2004/03/22
Injection(=注射)、Dependency(=依存)ということで、インスタンスを登録して、後に取得するときにプロパティ設定をやるメソッドを用意する感じでしょうか。S2Containerをオブジェクトプールとして使うように理解しました。

// 仮にinjectDependency()を持つインターフェイス
// をIComponentContainerとする。
IComponentContainer container = getComponentContainer(); 
// ページ生成〜登録
IPage page = loadPage(pageName, ...);
container.injectDependency(page, pageName);
// IComponentContainerを通じて後に取得
IComponentContainer container = getComponentContainer(); 
IPage page = (IPage)container.getComponent(pageName);

ではなく?