This project is read-only.

このプロジェクトについて

DDDPrjector は、DDD (Domain Driven Design: ドメイン駆動設計) で推奨されるアプリケーションアーキテクチャを適用するためのフレームワークを、C# ソリューションとして生成するツールです。
フレームワークをクラスライブラリではなく C# ソリューションとして提供するため、フレームワークを自由にカスタマイズすることが可能です。
O/R マッパーには NHibernate を使用します。

SummaryDiagram.png

レイヤ
このフレームワークでは次のレイヤを採用します。
  • プレゼンテーションレイヤ
  • アプリケーションレイヤ
  • パーシステンスレイヤ
  • ドメインレイヤ
プレゼンテーションレイヤに直接関係するクラスはフレームワーク内には含まれていません。必要に応じて、MVC パターン、MVP パターン、MVVM パターンといったプレゼンテーションパターンを独自に適用してください。
各レイヤの詳細についてはアプリケーションアーキテクチャ ドキュメントを参照してください。

既存パターン
このフレームワークで導入している主な既存パターンには次のパターンがあります。
  • エンティティ
  • 集約
  • 仕様
  • リポジトリ
  • 操作スクリプト
  • 依存性注入
  • 制御の反転
詳細についてはアプリケーションアーキテクチャ ドキュメントを参照してください。 (一部、ドキュメントに詳細が記述されていないパターンも含まれます。)

独自パターン
このフレームワークでは、DDD のアプリケーションアーキテクチャをアレンジして、次の独自パターンを導入しています。
  • 視点
  • エンティティビルダ
  • 作業ファサード
  • 操作スクリプト+コマンドパターン
  • 操作エラー
詳細についてはアプリケーションアーキテクチャ ドキュメントを参照してください。

アプリケーションアーキテクチャ ドキュメント

このツールによって作成された C# ソリューションには、アプリケーションアーキテクチャに関するドキュメントをビルドするための Sandcastle プロジェクトが付属しています。
ビルドされたドキュメントには、各レイヤの概要と、基本機能を提供する C# プロジェクトについての記述が含まれています。
アプリケーションの主要機能を提供する C# プロジェクトについての記述は含まれません。

アプリケーションアーキテクチャ ドキュメントに含まれる内容
  • 各レイヤについての概要
  • Base.Application プロジェクトの各クラスの説明
  • Base.Domain プロジェクトの各クラスの説明
  • Base.Persistence プロジェクトの各クラスの説明

アプリケーションアーキテクチャ ドキュメントに含まれない内容
  • Application プロジェクトの各クラスの説明
  • Domain プロジェクトの各クラスの説明
  • Persistence プロジェクトの各クラスの説明

DDDProjector のダウンロード

DDDProjector はこちらからダウンロードできます。

関連書籍


Last edited Jun 5, 2011 at 3:39 PM by MoroMoroProject, version 6