Microsoftのpatterns&practices(リンク)は、Application Architecture Guide 2.01(リンク)のもと、RIAパターン(リンク)を公開した。そのパターンは、それに対するソリューションを提供する3層のシナリオを扱う。
シナリオは、3層のデザインを使用して機密データを転送することなしに、データベースにアクセスするRIAを考察する。
提案されたソリューション
ソリューションは、以下のパターンを使用する
- ユーザインターフェイス処理は、Model-View-Controllerパターンで処理される。
- ユーザインターフェイスはデータエレメントに結合されるコントロールを含む、複数のコントロールから成る。
- プロキシは、プレゼンテーション層およびサービス層間の通信に使用される。
- Data Transfer Object (DTO)パターンは、複数のデータ構造を1つにまとめるために使用される。
- サービス層は、内部および外部データ構造間の変換を提供する。
- ビジネス層はファサードパターンを使用し、粗粒度メッセージベースの操作をサポートする。
- Transaction Scriptオブジェクトは、ビジネス要求処理を取り扱うために使用される。
- リポジトリパターンは、ドメインエンティティにアクセスするために使用される。
- データドメインパターンは、データのみを含むビジネスエンティティを定義するために使用される。
- データマッパーパターンは、データベーススキーマへドメインエンティティをマップするために使用される。
ガイドでは、使用される各パターンを詳しく説明し、Microsoft製品に基づいたテクニカルソリューションを提供している。とはいえ、各ソリューションはオープンソースを含むさまざまな製品で使用することができる。