- PR -

業務ロジック、データソース、プレゼンテーションの関係

1
投稿者投稿内容
uguuxp
会議室デビュー日: 2004/04/26
投稿数: 12
投稿日時: 2004-12-10 12:53
いつもお世話になっております。

業務ロジック、データソース、プレゼンテーションの関係について疑問がありますので、質問させていただきます。

業務ロジックとデータソース (主に RDBMS) の関係を分離するために O/R マッピングフレームワークや DAO クラスの導入という方法が存在し、かなりクールな方法で分離できることは理解しています。

業務ロジックと画面遷移 (システムの状態遷移?) を分離するために Web フレームワークやワークフローエンジンが存在し、これもそれなりにクールな方法で分離できることも理解しています。

しかし、業務ロジックの処理結果生成されるドメイン オブジェクトとプレゼンテーションの生成を分離するためのクールな方法が分かりません。 JSP に様々な機能を追加したり、 JSF が誕生したり、 Velocity の様なテンプレートエンジンが存在したり、 DTO と呼ばれるオブジェクトを導入したりしていますが、どれも O/R マッピングフレームワークのようにクールな方法で分離できているとは思えません。個人的には Cocoon のようにドキュメントに変換を加えてプレゼンテーションを生成する方法が正解に近いと思いますが…

質問は、

  • 皆様は業務ロジックとプレゼンテーションの現在の関係をどのように思っておられるのでしょうか?
  • どのようにこの関係を解決しているのでしょうか?

です。

宜しくお願いします。
YOU@IT
ぬし
会議室デビュー日: 2002/03/29
投稿数: 284
お住まい・勤務地: 大阪
投稿日時: 2004-12-10 23:16

うーん、何がクールで、何がクールでないのかが明確でないので、
uguuxpさんの考えがちょっとわからなかったのですが。。。

私の場合、ドメインオブジェクトがプレゼンテーション層に現れることが常に悪だとは
言えないかな、と思っています。
例えば、ドメインオブジェクトが大量のリストを保持するような場合、DTOのような
オブジェクトにデータをコピーするのは効率面で不利なになることもありますし。

結論としてはどれが正解というのも無いと思うのですが、個人的にはプレゼンテーション
の為の属性...例えばある入力フィールドがディスエイブルであるとか...が
ドメイン層に入り込まなければ良いのかな、と思っています。
ドメイン層がプレゼンテーション層に依存するのは良くないが、
プレゼンテーション層がドメイン層に依存するのはありかなと。

1

スキルアップ/キャリアアップ(JOB@IT)