[Seasar-user:2072] Re: injectDependency について

YOKOTA Takehiko takehiko
2005年 6月 1日 (水) 15:00:53 JST


横田です。

Koichi Kobayashi wrote:

> 「S2 の管理下にある・ない」と「インスタンス生成を S2 が行う・行わない」は
> 別物ということですね.
> 「管理下にある」はちょっと分かりにくいのですが,injectDependency() は
> あくまでも「S2 が把握しているコンポーネント」について,その「インスタンス
> 生成のみ」を S2 の外部で行うためのもの,と考えるのがよいかと.

とても理解しやすい説明をありがとうございます。自分の中でかなり明確になり
ました。

> で,横田さんのニーズは「S2 が把握していないコンポーネントに S2 管理下の
> コンポーネントを注入する」ということなのでしょうか?
> ここで「把握していない」は「事前に把握していない」ではなくて,DI を
> 行うその時点も含めて「S2 はそのコンポーネントに関する情報を保持しない」
> という意味でのことになりますが.

ええ、そうです。ただ、どちらかというと「S2に情報を保持させたくない」では
なく「(diconに事前に書けないので)S2に情報を把握させられない」という状況
です。しかしながら、diconに事前に書かなくともComponentDefをregisterすれ
ば良いということがわかりましたので、結局はComponentDefのregister+
injectDependency()が満たすニーズと一致することが分かりました。

ちなみにS2からgetComponentしてしまった後でもregisterしても良いものなので
しょうか?それとも、全てのregisterはgetComponentよりも前に行なう必要があ
るのでしょうか?

register -> getComponent, injectDependency

と理解していますが、順不同でも良いのでしょうか?

-- 
YOKOTA Takehiko
  [E-MAIL ADDRESS DELETED]



Seasar-user メーリングリストの案内