実例で学ぶアプリケーション開発 Ver.2 - Silverlight 4, WCF RIA ServicesによるWebショッピングサイト (1)アーキテクチャデザイン
Web ショッピングサイト アーキテクチャデザイン
まずは、、このSilverlight 4及びWCF RIA Services を使ったWeb ショッピングサイト開発のアーキテクチャ設計、およびフィーチャーをご紹介しましょう。
1.アーキテクチャのラフスケッチ
Web ショッピングサイトのアーキテクチャ要素、利用テクノロジーとその関連について、アーキテクチャラフスケッチ図(概要図)は、前回示した通りです。この図を、以前のSilverlight 3の場合のそれと、比較してみてください(同じページにリンクがあります)。
2. アーキテクチャ要素と実装ポイント
ソリューションサンプルは以下のアーキテクチャ要素で構成されています。
アーキテクチャ要素 |
利用するテクノロジ |
概要説明 |
|
1 |
UI |
Silverlight 4 |
Web ショッピングサイトのユーザーインターフェースを Silverlight 4 によって実装します。 WCF RIA Services を利用したデータアクセス、バインディング機能、認証機能を実装します。 |
2 |
サービス |
WCF RIA Services |
ADO.NET Entity Framework に対するクエリ、および更新のカスタムロジックをサービスとして公開し、クライアントの Silverlight 4 アプリケーションと共有します。 |
3 |
WCF サービス |
上記の ADO.NET Entity Framework のストアドプロシージャの呼び出し処理を WCF サービスとして公開します。 |
|
4 |
データアクセス |
ADO.NET Entity Framework |
データアクセス処理を ADO.NET Entity Framework によって実装します。 各テーブルへのCRUD操作 (クエリ、更新、追加、削除)、更新操作の同時実行制御、ストアドプロシージャの呼び出しを実装します。 |
以下にソリューションサンプルのアーキテクチャ要素ごとの実装ポイントを図で示します。
但し、これは、あくまでこのサンプルに関する実装ポイントだということを、注意してください。実際には、WCF RIA Servicesの処理は、クライアント側とサーバー側にまたがる処理であり、業務要件に合わせてカスタマイズすると、このような単純化ができない場合があります。このあたりは、また Tech・Ed 2010 のセッション T6-401で紹介できればと思います。
ただ、このサンプルのパターンを使えば、大抵の場合には、特に問題なく実装できるように工夫されていますので、ご安心ください。ぜひWebサイトの開発ガイドを、順番に読んで行って戴ければと思います。
次からは、アーキテクチャ要素ごとに解説していきます。最初は、サーバー側です。
※下図でいうと、サーバー側とは、便宜上、MSStoreSample.Web というフォルダに格納されているプロジェクトです(スタートアップ設定されています)。クライアント側は、MSStoreSample、もう一つの MSStoreSample.CatalogManager は、WPF のカタログメンテナンスツールです。
鈴木 章太郎