[seasar-javadoc:546] Re: S2Container
Makoto Yonezawa
stratosphire @ gmail.com
2006年 9月 1日 (金) 08:44:56 JST
米澤です。
Jundoさん、小林さん、コメントありがとうございます。
まずはお二人の意見をメソッドコメントにFBしてから、
またクラスコメントをすこしずつ書いていきたいと思います。
まだもう少し道のりが長いかも知れないですが、よろしくお願いしますm_ _m
06/09/01 に Koichi Kobayashi<koichik @ improvement.jp> さんは書きました:
> 小林 (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 mailing list
> seasar-javadoc @ ml.seasar.org
> https://www.seasar.org/mailman/listinfo/seasar-javadoc
>
--
-----------------------------
http://d.hatena.ne.jp/vestige/
http://www001.upp.so-net.ne.jp/vestige/
seasar-javadoc メーリングリストの案内