ファウラーの言う
・トランザクションスクリプトパターン
・テーブルモジュールパターン
・ドメインモデルパターン
に関連して見つけた記事をメモ。
まず、ここ↓
システム設計日記 | 20080806
ついて、ここの掲示板
GotDotNet Japan 掲示板
2005.9.7のTechEDフォローアップセミナ
「.NETアプリケーション設計と開発の本質」
で、ビジネスロジックのパターン選択として
トランザクション スクリプト
ドメイン モデル
テーブル モジュール
のパターンの適用方針の解説がありました。
スピーカはエバンジェリストの中原さん(あれ?漢字あってます?)
簡単に解説すると・・
トランザクション スクリプト
手続き型的なアプローチ
メリット:開発者なら大半が理解可能な手続き型モデル
デメリット:複雑なビジネスロジックの構築・保守が困難
ビジネストランザクションの単位でメソッド化
=>複数のビジネスロジック間で重複が発生しやすい
明確な構造をもたないルーチンの絡まりあいになりやすい
ドメイン モデル
OO的なアプローチ
メリット:OOのメリットをフルに発揮、複雑なビジネスロジックを
体系化したモデルで構築・保守可能
デメリット:OO設計・プログラミングに精通していないと開発困難(高いスキル要)
フルにオブジェクトモデルで構築する場合、ORマッピングの基盤
が必須ろなるが開発は容易ではない。
テーブル モジュール
レコードセットを活用したデータ中心アプローチ
トランザクションスクリプトとドメインモデルの中間的な存在
メリット:テーブルを軸にビジネスロジックが体系化されている
レコードセットはUIとの親和性が高い(バインディング)
.NETではDataSetが存在するので、
テーブルモジュールパターンの適用が極めて容易
デメリット:OOのアプローチ(継承、デザインパターン)ができない
複雑なビジネスロジックの構築・保守への対処がやや困難
.NETの一般的なケースでは「テーブル モジュール」がベター
じゃ、ドメインモデル的に実装するとしたら、ってことで
ドメインモデル的な実装サンプル↓
どっとねっとメモ:ドメインモデルサンプル


最近のコメント