[seasar-javadoc:221] Re: ComponentDef M1

Koichi Kobayashi koichik @ improvement.jp
2006年 6月 13日 (火) 03:00:22 JST


小林 (koichik) です.

Date:    Mon, 12 Jun 2006 08:53:58 +0900
From:    Hideaki Suzuki <suzuki @ uinet.or.jp>
To:      seasar-javadoc @ ml.seasar.org
Subject: [seasar-javadoc:216]  ComponentDef M1

> 鈴木(belltree…hatenaに既に登録されていてショック orz)です。

ははは,そんなに珍しい発送でもないですからねぇ.(^^;

> ComponentDef の Javadoc Milestone 1 を添付しました。 (^^;

お疲れ様です!!

> p.s. 1
>   冒頭説明は、『〜を表すインターフェースです。』に統一した方が良いですか?
>   (…AccessTypeDefとかも…)

そうですね,なんとなくパターンになってきたので,今後書くものに
ついては是非.
既に書いたものについては気が向いたら直すくらいで.(^^;

> p.s. 2
>   ComponentDef から Hotswap関係がなくなりましたね…チェックせねば (--φ
>   S2の進化がリアルタイムで見れて楽しいかも♪

コンテナそのものに結構修正が入ってますよね.
こういう時期はあまりないので貴重ともいえますが,Javadoc 書くには
辛いタイミングかも?

> p.s. 3
>   投稿期間があいてしまった … 反省 (--;;;
>   決して、R○by C○nference に行っていたからというわけじゃ…アッ!、ゥグッ…
>   塾長、お許しを…

勉強会でのレポート楽しみにしてます♪

以下,Javadoc へのコメント.

>  * S2コンテナ上で管理されるアプリケーション構成部品であるコンポーネントを表すインターフェースです。

「コンポーネントを表すインターフェース」は【違和感】少し【あります】
「コンポーネントの定義を表す」かな.

>  * <dd>定数などのパラーメータは、 {@link Expression <var>OGNL</var>式}により設定されます。</dd>

これはちょっと違ってますね.
ComponentDef に設定される式は,dicon では

<component name="userName">
   "scott"
</component>

みたいに書いた場合の式です.
この式はインスタンスを生成するために使われます.
パラメータというと,

<component class="java.net.URL">
  <arg>"http://www.seasar.org/"</arg>
</component>

みたいなイメージになると思いますが,これは ComponentDef ではなく,
ArgDef が持つことになります.
ComponentDefImpl だと ArgDefSupport.

それから,式が OGNL とは限りません.
ところで,OGNL が <var>〜</var> になってるのはなぜ?

>  * <dt>依存性注入(<var>Dependency Injection</var>)</dt>

から下はもう少し整理したいかなぁ.


injectDependency()

>      * 指定された外部コンポーネントに、 依存オブジェクトをインジェクションします。

「外部コンポーネント」は InstanceDef にあわせて「outer」にして
{@link 〜} しませう.

getComponent()

>      * このコンポーネント定義に基づいて、 実装コンポーネントを返します。

「実装コンポーネント」は分かりにくい感じ.
「コンポーネントのインスタンス」とか.

getComponentClass()

>      * このコンポーネントの{@link java.lang.Class クラス}を返します。

さすがに Class を {@link 〜} する必要はないような.(^^;
それから,ここでは getConcreteClass() との違いを書いておく必要が
あるかと.
その違いは,getComponentClass() は定義上のクラス (dicon でいうと
<component> 要素の class 属性) を返し,getConcreteClass() は
(もしあれば) AOP が適用された,インスタンスの本当のクラスを
返すということです.



-- 
<signature>
    <name>Koichi Kobayashi</name>
    <e-mail>koichik @ improvement.jp</e-mail>
</signature>



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