.NET Framework 3.0は、その名前から.NET Frameworkのバージョンアップ版のように受け取られてしまいがちだが、実は違う。では、その正体は何か。
9月6日初出時点の本文中、.NET Framework 3.0において要となるXAML、XOMLなどXML系言語の説明において誤った記述がありましたため、修正いたしました。読者の皆様および関係者の方々へ誤解を与えたことに対し、お詫びいたします。
著者
米国ではRC1のリリースも迫ったWindows Vista。先週横浜で行われた「Tech・Ed 2006 Yokohama」でも、Windows Vistaに関連したテーマが数多く取り上げられ、それらのセッションは人気を博した。ここでは、そうしたセッションの中から、Windows Vistaに標準搭載される「.NET Framework 3.0」についての解説を取り上げる。
.NET Framework 3.0は、その名前から従来の.NET Frameworkそのもののバージョンアップのように受け取られてしまいがちだが、実は違う。.NET FrameworkのランタイムであるCLRのバージョンも変わらず、.NET Framework対応言語(VB.NETやC#など)の言語拡張もない。
では.NET Framework 3.0とは何かというと、以前はWinFXと呼ばれていた、.NET Framework 2.0上に位置する大きな意味でのフレームワークまたはクラスライブラリ郡といえるものだ。
つまり、.NET Framework 2.0ベースで開発されたソフトウェアには、何の影響も与えることがない。Side-By-Sideにする必要さえない。ソフトウェアを.NET Framework 3.0対応にするということは、単純に追加されたクラスライブラリを利用するということにほかならない。
.NET Framework 3.0で追加された機能は、大きく分けて4つある。Windows Presentation Foundation(WPF)、Windows Communication Foundation(WCF)、Windows Workflow Foundation(WF)、そしてWindows CardSpace(WCS)だ(本稿ではWPF、WCF、WF、WCSの概略のみを説明し、それぞれの詳細については別稿とする)。
WPFは、Windows VistaのUIのような高度な表現力を実現させるものだ。WPFにより、3D表現といった見た目だけでない操作性を含めた使い勝手の良さをアプリケーションに組み込めるようになる。WPFは、マイクロソフトがユーザーエクスペリエンス(UX)と呼ぶユーザーの「使い勝手」を向上させる手段となる。
WPFに関連した製品として、Microsoft Expressionがアナウンスされている。この製品を使うことで、アプリケーションのユーザーエクスペリエンスのデザインとロジックの開発を、完全に分離することができるようになる。その結果、デザイナーがイメージしたとおりの外観や操作性が実現でき、開発者は機能やロジックの実現に注力できるようになる。
WCFは、Webをプラットフォーム化する技術として紹介されているが、具体的には、サービス指向アプリケーションのための、さまざまな標準化技術を統一的に使用するためのクラスライブラリといえる。
WCFを使うことで、サービスの利用者はさまざまなプラットフォームに分散しているサービスを、統一されたやり方で利用できるようになる。サービスの提供者も、利用者の要求に応じて、各種プロトコルや接続規格といった通信テクノロジに対応できるようになる。
WFによって実現されるのは、システムワークフローやヒューマンワークフローといったさまざまな粒度のワークフローを、統一されたモデルで記述できる基盤だ。
従来、ワークフローはプログラムの中にハードコーディングされていた。これは、フローに変化が起きた場合、プログラムの書き直し、もしくは修正が必要になることを意味していた。WFの目指すものは、フローの変化に柔軟に対応できるようにすることだ。つまり、個々のプロセス(プログラム)と、ロジック(ワークフロー)を分離させ、ロジックの記述を別にしておくことで、変更に強いシステムを構築できるようにする。
WCSは、InfoCardと呼ばれていたもので、従来、さまざまなトークン(ユーザーを識別する記号、例えばユーザー名やメールアドレスなど)が混在して、統一されていない操作性を改善し、どのようなトークンが必要とされる認証方式でも、同じ操作方法で認証できるようにするためのものだ。認証を実現するためのシステムのためのシステムという意味で、アイデンティティ メタシステムと呼ばれている。
現実と同じようにカードを選択して提示するだけで、さまざまなサイトにアクセスできるような仕組みが実現されるわけだ。このとき、カードの内容がすべて相手に伝わるわけではなく、必要とされているトークンに絞って送信され、かつ暗号化によって情報が保護される仕組みとなっている。
Copyright © ITmedia, Inc. All Rights Reserved.