Microsoft patterns & practicesは近ごろ、Composite Application Guidance for WPF(参考記事)を利用可能にした。このガイダンスの主なコンポーネントは、複合アプリケーションライブラリ(リンク)で、複合WPFアプリケーションの作成に便利なライブラ リである。
アプリケーションの設計方法、開発方法およびデプロイ方法に関する提言に加えて、Microsoft pattern & practicesは提言の実装のリファレンスや再使用可能なアプリケーションビルディングブロックを提供している。4種類のガイダンス(リンク)が用意されている が、それはGuides、Reference Implementations、Software FactoriesおよびApplication Blocksである。Composite Application Guidance for WPFには、独立して開発されたモジュールから大規模な複合WPFアプリケーションを構築する方法に関する提言の他、Stock Trader RIと呼ばれる実装のリファレンスおよびComposite Application Library (CAL)という名のソースコードライブラリがある。patterns & practicesによると、CALは以下の項目を実行するのに便利である。
- 独立しているが、それでも協力的なモジュールで構成されるクライアントの構築。
- モジュールビルダーの懸念をシェルデベロッパの懸念と区別する。そうすることで、事業体がWPFアーキテクチャーの代わりにドメイン固有モジュールの開発に集中することができる。
- アーキテクチャーのフレームワークを使用し、一貫性があり、高品質な統合アプリケーションを生産する。
patterns & practicesによると、CALは以下の戦略を実行している。
- 依存性注入の技法を使用し、Presentation ModelおよびModel-View-Presenterパターンの実装に必要なコードをシンプルにする。
- モジュールロードインフラを提供し、モジュールが始動操作を実行できるようにする。またモジュールは、他のモジュールやシェルアプリケーションが共有コンポーネントを使用できるように登録することができる。
- ソースコードでの広範囲なユニットテストが含まれる。デベロッパはライブラリを修正することができ、テストを使用してその機能性を検証することができる。
- ライブラリサービスのインターフェイスおよびライブラリサービスの実装を分離する。
CALは以下のパターンを考慮して、設計された。
- 複合ユーザインターフェイスパターン:複合および複合ビュー、コマンド、アダプター
- モジュール性パターン:個別のインターフェイスおよびプラグイン、サービスロケーター、イベント統合機能、ファサード
- テスト容易性パターン:制御の反転、個別のプレゼン
Composite Application Libraryは複合WPFアプリケーションを構築するために、そのまま使用される。しかし、コアエレメントを拡張したり、置き換えたりすることで、それ ぞれの要望に合う形にカスタマイズすることもできる。必要な機能性を取得するため、ライブラリのソースコードは変更することができる。
原文はこちらです:http://www.infoq.com/news/2008/07/Composite-Application-Library