[seasar-dotnet:1602] Re: 自動バインディング対象について

Tatsuharu Kawakami [E-MAIL ADDRESS DELETED]
2010年 3月 17日 (水) 11:54:07 JST


川上です。

吉田さん、返信ありがとうございます。

自分も昔はIFは切り分けるべき!という考えでしたが、
SAStrutsが出たあたりからだいぶ考えが変わってきました^^;


Quillも検討したのですが、コンポーネントとアスペクトの自動登録機能がなかったため不採用としました・・

開発規模が大きくなったり開発メンバーのスキルが高くなかったりするとき、
一例としては「属性のつけ忘れでトランザクションがかけられていない」
といったことが考えられるので、一括で設定が可能なS2Container.NETを採用しました。
Quillでもそのような機能があるのであれば教えていただきたいです。




2010年3月17日11:00 Takafumi Yoshida <[E-MAIL ADDRESS DELETED]>:
> いつもお世話になります。吉田@オプティクスです。
>
> 2010年3月17日10:18 Tatsuharu Kawakami <[E-MAIL ADDRESS DELETED]>:
>> S2Container.NETで自動バインディングの対象となるのはInterfaceのTypeのみとなっていますが、
>> これはどういった理由からなのか教えていただけないでしょうか?
>> http://s2container.net.seasar.org/ja/dicontainer-reference.html#AutoBindingMode
>
> 自分もよくは知らないのですが・・・
>
> そもそもDIの考え方のスタートとして、コンポーネント間の関係をインターフェースで定義しておいて
> 具体的なコンポーネント(実装)は別に実装し、その関係を設定ファイルにもたせることで
> コンポーネント間の依存関係をコードから排除するって考えがあったように思います。
>
> このことから、インターフェースと実装は分けて書くべし!的な風潮があったのかも。
> これをベースにしたのがJava版のSeasar2.3系列であり、.NET版Seasarだと思われます。
>
> ただ、この風潮ってあまりメリットがなくなってきて、実装だけでもいいのでは?となって
> Java版のSeasarの2.4系列ではインターフェースなしでもコンポーネントを作成できるようになり
> .NETではQuillが生まれた、というふうに自分は理解してます。
>
> ですので、自分の中では
> Seasar 2.3(Java) = Seasar.NET
> Seasar 2.4(Java) = Quill
> みたいな意識でいます。
>
> #あ〜、自分もよく理解できてないな・・・ツッコミ希望w
>
>> IFを作成する作業が面倒なので、
>> 重大な理由が無ければ実装クラスでも自動バインディングするようにカスタマイズしたいと考えております。
>
> 上記の様なニーズであれば、Quillを使ったほうがいいかもしれません。
> Quillであれば、インターフェースなしでImplementationアノテーションをクラスに記述すれば、Quillでコンポーネント
> として扱えます。
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>



-- 
--------------------------------------
Tatsuharu Kawakami
[E-MAIL ADDRESS DELETED]


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