5

先日、ASP.NET MVC + CSLA + DDD (ドメイン ドライブ設計) をベースにしたシステムのレビューを依頼されました。このシステムの最初のバージョンは、ASP.NET MVC + CSLA に基づいていました。2 番目のリリースは、それに加えて DDD が追加されたものに基づいていました。理由は……まあ、わからないからです。2 つの異なるアーキテクチャの図を見ると、2 番目のバージョンが非常に複雑であることが明らかになりました。CSLA オブジェクトは基本的に Domain オブジェクトを使用していました。このようなものを見たときは、すでに臭いがすることを知っていますが、A) すべてのトピックについて極端な知識を持っているか、B) 長期間使用していない限り、なぜ誰かがこのようにしてはいけないのかを正当化するのは困難です. このトピックについてはどちらも持っていませんが、これを最初から作成していたら、このようにはしなかったでしょうし、そうしなかったでしょう」

では、親愛なる読者の皆さん、この状況でどうしますか? 私の考えでは、CSLA と MVC と DDD を使用したい場合は、立場を明らかにして、どちらか (CSLA または DDD) を選択します。そうしないと、キッチンに料理人が多すぎます。

この件についてご意見がありましたら、ご意見をお聞かせください。

4

4 に答える 4

4

私の考えでは、CSLA、MVC、およびDDDを使用する場合は、スタンドを作成していずれか(CSLAまたはDDD)を選択します。あなたがいない場合は、キッチンに料理人が多すぎます。

私はそこであなたに同意する傾向があります。すでにフラッシュされたDDD対応アーキテクチャとサポートフレームワークを使用してDDDを実行したい場合は、CSLAよりもS#arpアーキテクチャをお勧めします。

そうは言っても、CSLAを使用してDDDのいくつかの側面を引き受けることが可能であると感じる人もいます。明らかに、DDDの純粋主義者はおそらくその見通しに固執するでしょうが、DDDから何かを得るために純粋主義者である必要はありません。Derick Baileyには、このトピックに関する興味深いブログがあります:http ://www.avocadosoftware.com/csblogs/dredge/archive/2007/02/19/687.aspx

于 2009-04-22T16:46:21.560 に答える
2

私の意見では、CSLA は最新バージョンで失敗したと思います。意見は異なりますが、私の本では、オブジェクトが子であるかどうかを知る必要がある場合、それは非常に間違っています。

于 2009-04-24T22:05:11.797 に答える
0

CSLAとDDD/Alt.Netが完全に目的を超えているわけではないことに気付いている人もいるようです。

より純粋で実用的でない道をたどりたいと決心した場合、ロッキーが行った良い仕事を適応させるためにおそらくかなりの仕事があることに同意します。キースが示唆したように、それは注意しないと、混乱を引き起こすのは簡単です。

いくつかの詳細情報:

CSLA.NETでの依存性注入の使用

CSLA.NETでのリポジトリパターンの使用

彼が「実用的な」フレームワークの構築に取り組んでいる理由についてロッキー

于 2009-10-26T17:19:15.103 に答える
-2

メモリから ActiveRecord アプローチを使用する CSLA が DDD に特に適しているかどうかはわかりません。nHibernate を使用したほうがよいでしょう。

于 2009-04-22T02:46:51.283 に答える