[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 メーリングリストの案内