[seasar-javadoc:543] Re: S2Container
Koichi Kobayashi
koichik @ improvement.jp
2006年 9月 1日 (金) 03:30:25 JST
小林 (koichik) です.
Date: Mon, 28 Aug 2006 10:12:11 +0900
From: "Makoto Yonezawa" <stratosphire @ gmail.com>
To: seasar-javadoc @ ml.seasar.org
Subject: [seasar-javadoc:524] Re: S2Container
> まずは、メソッドコメントをすべて書いたものを添付します。
>
> 長いですが、確認お願いします。
ありがとうございました.
こちらについては Jundo さんのレスにコメントします.
個人的にはいい感じになったと思います.
以下はクラスコメントについて.
> それとクラスコメントですが、
> もう一度メソッドを整理すると、
>
> コンポーネントを取得
> getComponent
> コンポーネントを検索
> findComponents
> findAllComponents
> findLocalComponents
> コンポーネント定義を取得
> getComponentDefSize
> getComponentDef
> コンポーネント定義を検索
> findComponentDefs
> findAllComponentDefs
> findLocalComponentDefs
> hasComponentDef
> コンポーネントの登録
> register
ここまでと
> DIする(依存性の注入)=メソッドの実行?
> injectDependency
が DI コンテナとしての基本的な機能というか,コンポーネントを
扱うためのインタフェースですね.
そして,
> コンテナのお世話
> hasDescendant
> getDescendant
> registerDescendant
> include
> getChildSize
> getChild
> getParentSize
> getParent
> addParent
> init
> destroy
> getRoot
> setRoot
> 名前空間について
> getNamespace
> setNamespace
> getPath
> setPath
> 外部コンテキストについて
> getExternalContext
> setExternalContext
> getExternalContextComponentDefRegister
> setExternalContextComponentDefRegister
> クラスローダー
> getClassLoader
> setClassLoader
> マップ
> registerMap
この辺は全部ひっくるめて「コンテナのお世話」でいいかも.
コンポーネントではなく,コンテナ自身あるいはコンテナの階層を
扱うためのインタフェースです.
もし分けるなら,階層に関わるかどうかで
コンテナ自身のお世話
> getNamespace
> setNamespace
> getPath
> setPath
> getClassLoader
> setClassLoader
> init
> destroy
コンテナ階層のお世話
> hasDescendant
> getDescendant
> registerDescendant
> include
> getChildSize
> getChild
> getParentSize
> getParent
> addParent
> getRoot
> setRoot
> registerMap
というのもありかと.
init / destroy はライフサイクルとして別にしてもいいかも.
なお,setPath / getPath は名前空間とは関係なくて,dicon ファイルなど,
コンテナの定義を記述したリソースのパスを設定したり取得するものです.
クラスコメントに記述する内容も,コンテナがコンポーネントを
扱う話と,コンテナ階層の話を大きな柱とするのがいいかも.
なので,
> 詳細は、上のものから、すこし詳細を説明
> ・コンポーネントの管理
> ・コンテナの管理
の「コンテナの管理」で階層のことまで説明するのがよいかと.
それを踏まえておけば,
> ・DI
ここで DI 対象のコンポーネントがどのように決まるかの説明も
しやすくていいかも.
> あとは、
> ・ライフサイクル
> ・インジェクションの種類
> ・コンテナの構造>>>階層化されていることについて
>
> こんな骨組み?
これらは上の方に含まれちゃうような.
> うーん、まだどうかいていいやら・・・
> すいません、助言のほどよろしくお願いしますm__m
同じくどう書いてイイやら悩んでしまいます.(^^;
ともあれ (JW),いきなり大きく考えずに,少しずつ書きながら
みんなの意見を集めるということでどうでしょう?
# 超他力本願寺 (^^;
クラスコメントの構成について,あまり詳細に考え過ぎると
なかなか手が動かなくなりそうなので,詳細は後回しにして
いいんじゃないかと思います.
そんなわけで (どんなわけで?),まずはコンテナの基本機能として,
コンポーネントを取り扱っているところから書き始めてみては
いかがでしょうか.
頑張れ〜.
--
<component name="koichik">
<property name="fullName">"Koichi Kobayashi"</property>
<property name="email">"koichik @ improvement.jp"</property>
<property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>
seasar-javadoc メーリングリストの案内