[seasar-javadoc:151] Re: InstanceDef

O.Goto o-goto @ try-net.or.jp
2006年 6月 1日 (木) 19:38:54 JST


後藤(goto)です。

On Thu, 01 Jun 2006 00:00:46 +0900
Koichi Kobayashi <koichik @ improvement.jp> wrote:

> 小林 (koichik) です.
> 
> Date:    Wed, 31 May 2006 23:26:04 +0900
> From:    "O.Goto" <o-goto @ try-net.or.jp>
> To:      seasar-javadoc @ ml.seasar.org
> Subject: [seasar-javadoc:128] Re: InstanceDef
> 
> > ExternalContextだと飛びすぎのような気がするので、S2ContainerListener・S2ContainerServletの記述を入れてみました。
> > Webコンテナ以外のコンテナを想定した場合に書き直す必要が出てきてしまいますが、どうしましょうか。
> 
> マニュアルではなく Javadoc を見る人の中は Web コンテナ以外で
> S2 を使う人もいると思います.
> その人達に重要なのが ExternalContext なので,できれば
> 一言書いてリンクしたいところです.
> 
そうですね。やはりExternalContextについては記述をして、Webコンテナの場合は、と続けるようにしようと思います。


> 以下は Javadoc へのコメントです.
> 
> >  * <dt><code>prototype</code></dt>
> >  * <dd>{@link S2Container#getComponent(Object)}を呼び出すたびに新たなインスタンスが生成されます。</dd>
> 
> 実はインスタンスが生成されるきっかけは getComponent(Object)
> だけではないので,「コンポーネントが必要とされるたびに」では
> どうかと思ったのですが,分かりにくい?
> 「必要とされるたび」だといつ必要とされるのか? まで書かないと
> いけないような,そこまで書いてたら大変なような.
> いきなり Spring 級のボリュームを書いていくのは辛いので
> 今のままでもいいかも.
> 
そうでした。
getComponent(Object)の直接対象だけではなく、DIされるコンポーネントがsingletonじゃなかったら
芋づる式にインスタンスが生成されるのですよね。
ここの説明のしかたは根本的に考え直してみます。
今のままだと誤解を生んでしまうと思うので。

>  * <dt><code>application</code></dt>
>  * <dd>コンテキスト毎に1つのインスタンスが生成されます。{@link javax.servlet.Servlet}を使う場合、コンポーネントは{@link javax.servlet.ServletContext}に格納されます。
>  * </dd>
> 
> 「コンテキスト」だけだとどんなコンテキストか分からないので,
> 「アプリケーションコンテキスト」でどうでしょうか?
> 
それがいいですね。そうします。

> >  * diconファイルではcomponentタグのinstance属性で指定します。<br/>
> 
> この場合の component や instance は <code>〜</code>
> して欲しいなぁ.
> 
うっかりでした。すみません。

> >  * Tigerアノテーションでは&#064;Componentのinstance値で指定します。<br/>
> 
> &#064; って?
> 
これは「@」の文字参照です。
Javadocコメントの中でコメントの先頭か中括弧の先頭以外であれば直接「@」を書いても問題は
ないはずですが、念のため明示的に文字参照にしました。
Wikiにも書いておきました。


seasar-javadoc メーリングリストの案内