codeseek
TOP
サンプル解説
プログラミング考
codeseekBlog
勉強会
リンク
プロフィール
お読みください
掲示板(SPAMのため閉鎖)







累計:
本日
昨日



Microsoft .NET 関連サンプルの解説


7、Application Blockを知っていますか

Application Blockはマイクロソフトが提供している.NET上で動作する、いわゆるフレームワークと呼ばれているプログラム群です。

今回は、User Interface Process (UIP) Application Block - Version 2.0をご紹介します。

以下のページから、ダウンロードと英語の説明を手に入れることができます。
http://msdn.microsoft.com/library/en-us/dnpag/html/uipab.asp

UIP Application Blockは、1つのソリューションでWindowsFormとWebFormの両方を結びつけ、それらのプログラムコードの違いを最小限にし、相互利用をしようというものです。

中心的機能は画面遷移で、WindowsFormsの場合はapp.configに、ASP.NETの場合はweb.configに差し替え可能なviewとNavigationGraphを登録しておいて、controllerクラスでそれらをコントロールするものになっています。
controllerクラス自身とそのクラス作成プログラマは、表示のために使うVIEWのクラスについて知る必要が無く、結果プログラマの手を借りなくともVIEWの差し替えが可能になっています。
NavigationGraphはviewを選択するための遷移パターンを記述するものです。
これらの仕組みを使って、コンパイル後に使用するクラスを変更する、という仕組みの実装が可能です。

Web側で中断した処理をWindows側で再開する機能も持っています。このようなことを実現したい案件であれば、とても参考になるでしょう。

ただ、とても面白い挙動のUIPにも、残念ながら致命的な欠点があります。それは画面遷移情報をxmlに持たせることになったため、VIEWのクラス情報を使ったVisualStudioでのデバッグにかなりの制限がかかってしまうことです。仕様上しょうがないのですが、開発効率をひどくおとしてしまっています。

もしも、これから作ろうというシステムでUIPが使えそうだと思ったら、ぜひ、UIPの本体とサンプルをじっくり読んで、必要な機能だけを実装することをお勧めします。

いろいろな機能を実現するための、良い、そして、かなり複雑なサンプル。それがUIP ABだと思います。