マイクロソフトのコンサルタントであり、Microsoft pattern&practices Application Architecture Guideの寄稿者でもあるSerena Yeoh氏は、後にAzureに移植されたレイヤ化アーキテクチャデザインパターンのアーキテクチャ基盤として様々な.NET技術(WPF、WCF、WF、ASP.NET、EF)を使用した.NET 4.0向けのレイヤ化アーキテクチャサンプルを作成した。
コードサンプルの目的は、エンタープライズアプリケーションに対して、アーキテクチャの設計原則を適用し、.NETのコア技術を使用して健全なコードの促進とメンテナンスの容易化をどのように実現するかを示すことである。
.NETサンプルには、様々なレイヤ(プレゼンテーション、ビジネス、サービス、データ)を対象にした16アプリケーションが含まれている。モデルダイアグラムは、以下を参照して欲しい。
このコードのAzureへの移植サンプルで、Yeoh氏は、マイクロソフトのクラウドプラットフォーム上で.NETコア技術を使用した他のサンプルを紹介する。サンプルには、クラウドに関連した3つの追加プロジェクトが含まれている。
- ExpenseSample.Cloud.Service - メインとなるクラウドサービスプロジェクト
- WCFWebHost - バックエンドのWebサービスをホストするWCF Web Roleプロジェクト
- WebRole - サンプルのASP.NETアプリケーション
Azureのモデルダイアグラムは、似ているが、若干の違いがある。
サンプルには、CodePlex上で公開されているMS-PLライセンス下のソースコードが含まれている。 .NETのレイヤ化アーキテクチャサンプル、Azureのレイヤ化アーキテクチャサンプル。