2月2日、3日に横浜で開催された「Microsoft Developers Conference 2006」(MDC)では、マイクロソフトが年内の発売を目指して開発を進める次期クライアントOS「Windows Vista」に関するスピーチやセッションが数多く設けられた。
中でも、観衆の興味をひいたのは、Windows Vistaに合わせて新たに用意されるAPIセット「WinFX」に含まれる、「Windows Presentation Foundation」(WPF)に関連した一連のデモだ。WPFは、エンドユーザーに対して従来とは比較にならないほどにリッチなユーザーインターフェース(UI)を提供するサブシステムであり、「見ればすぐに分かる進化のポイント」ということもあって、基調講演においても繰り返しデモが行われていた。
マイクロソフトでは、このWPFの能力をフルに生かしたアプリケーションを作成するためのデザイナー向けツールとして、「Expressionファミリー」と呼ばれる3つの製品を準備している。PhotoshopやIllustrator、Flashといったプロ向けのグラフィックツールに似た操作系を持ち、ウェブサイト上で表示するためのパーツを始め、インタラクティブな要素を持ったアニメーションを駆使したアプリケーションUIなどを作成できるものである。
一部では「アドビキラー」などとも呼ばれているExpressionファミリーについて、マイクロソフト、Expression Professional Designer ToolsテクニカルプロダクトマネージャーであるArturo Toledo氏に話を聞いた。
--Expressionと呼ばれるツールで何が可能になるのか教えてください。
マイクロソフトでは、常にユーザーに対してリッチなユーザーエクスペリエンスを提供することを目指した製品開発を行っています。次期クライアントOSである「Windows Vista」には、そのためのテクノロジーとしてさまざまなものが実装されますが、中でも新たなAPIセットである「WinFX」のサブシステムである「WPF」は注目に値するものです。WPFは、これまで別々だったコンテンツとアプリケーションの開発モデルを統合するものです。WPFにより、デザイナーと開発者のコラボレーションはより加速し、ユーザーに対してリッチなインターフェースを提供できるようになります。
例えば、従来であれば、プロのデザイナーによってグラフィックとして作成されたUIは、開発者に提出された段階で、再びソースコードレベルから書き直される必要がありました。この方法では、手間がかかるのに加えて、完全にデザイナーのイメージ通りのUIは作ることができなかったのです。
WPFでは、デザイナーと開発者のよりスムーズなコラボレーションを実現するためにXAML(eXtensible Application Markup Language)と呼ばれるXMLベースのマークアップ言語を使います。デザイナーがExpressionで作ったUIをXAMLで出力して開発者に渡すと、開発者はXAMLをVisual Studioで読み込み、プロジェクトの一部として利用することができます。また、XAMLはオープンな仕様として提供されるので、他社製のツールにもXAMLの入出力機能を実装することが可能です。
--Expressionには3つの製品があるそうですが、それぞれの役割について教えてください。
「Expression Graphic Designer」は、ビットマップとベクトルデータの両方を扱えるグラフィック作成ツールです。作成したグラフィックは、標準的な画像フォーマットのほか、XAMLとしても出力することができます。
「Expression Interactive Designer」は、WPFベースのWindowsアプリケーションやウェブ向けアプリケーションのリッチなUIを作成するためのツールです。3Dオブジェクトやビデオ、オーディオ、アニメーションなどのさまざまな要素をInteractive Designer上で統合できます。必要があれば、内容をXAMLでエクスポートし、開発者がそれをVisual Studioに取り込んで、より深いコーディングを行うことも可能になります。
「Expressin Web Designer」は、標準に準拠したサイト作成が行えるウェブデザインツールです。CSSやXHTMLといった標準のサポートに加えて、ASP.NETのパワーをフルに活用できるようにデザインされています。
また、開発者向けには、コードネームで「Cider」と呼ばれる技術を提供します。これは、WPFに基づいたアプリケーションのビジュアル開発を可能にするものです。DesignerファミリーとCiderとの連携によって、開発者側で作ったUIのモックアップをデザイナーがExpressionでリファインするといったコラボレーションも可能になります。Ciderは、次期バージョンのVisual Studioに取り込まれる予定です。