
最新トレンドやキーワードをわかりやすく解説
WCR Watch [17]
デスクトッププラットフォームを制するのはApolloかWPF/Eか
ナレッジオンデマンド宮下知起
2007/1/12
| MicrosoftのWPFとAdobeのApolloが登場し、2007年のRIA市場で注目されるスタンドアロン型のリッチクライアントアプリに注目してみよう。 |
- - PR -
リッチクライアントは、HTMLベースのWebアプリケーションの課題解決という枠を超えるための技術・ソリューションだった。しかしいま、Webにリッチなユーザーエクスペリエンスを実現するためのプラットフォームが、旧来のリッチクライアントの役割も包含して躍進しつつある。AdobeのFlashと、MicrosoftのWPF(Windows Presentation Foundation)だ。FlashはいまやほとんどのPCにインストールされているリッチコンテンツを実現するためのデファクトスタンダード。
片やWPFはWindows Vistaの登場とともにWindowsに標準搭載されるプラットフォーム。その可能性は未知数だが、両者ともにプラットフォーム上にリッチコンテンツを実現するためのツールの開発にかなりの力を入れている。本稿では、この分野ではMicrosoftに先行して着手したAdobeに焦点を当てる。そこに、将来のリッチクライアント像(と表現するのはもはや正しくないかもしれない)の片鱗が見えるかもしれない。
■リッチユーザーエクスペリエンスが次世代Webの鍵となる
昨年リリースされたFlash Player 9は、わずか3カ月で35%を超える普及率に到達した。全バージョンのFlash Playerで見ると、インターネットに接続するPCの実に98%の普及率を誇るという。FlashはWebでリッチコンテンツを実現するプラットフォームのデファクトとなった。そしてFlashは、2006年のAdobeによるMacromedia買収によってAdobeに引き継がれ、Adobeが培ってきたPDFとの統合や各種ツールとの連携によって、さらに成長しようとしている。
一方で、MicrosoftもWPFを打ち出してきた。WPFはFlashに真っ向から対立するプラットフォームだ。Webにおける“ユーザーエクスペリエンス”は、これまでAdobe(Macromedia)やWebコンサルタントが盛んに用いてきたキーワードだった。しかしここに来て、Microsoftも自社のWebやカンファレンス、記者発表などのさまざまな場所でユーザーエクスペリエンスの重要性を唱え始めている。
FlashもWPFも、ゴールとするのはWebサイトの表現力を高めリッチなユーザーエクスペリエンス(豊かなユーザー体験)を提供すること。それは例えばBtoCビジネスにおいては顧客満足度や購買率の向上を、企業においてはプロセスの改善や生産性向上をもたらす。Webの成功は“ユーザーエクスペリエンス”を提供するデザイン力とそれを支えるプラットフォーム、そしてツールにかかっているといっても過言ではない。そしてそこに、次なる大きなマーケットの予感がある。
■エクスペリエンス実現の1つの課題はデザイナとディベロッパの境界を埋めること
昨年10月、AdobeはWebディベロッパとデザイナのためのカンファレンスAdobe MAXを開催した。ここで語られた中心テーマは、旧Macromedia製品とAdobe製品の統合、製品間の連携が提供する、「Website Workflow」「Dynamic Workflow」「RIA Workflow」「Electronic Document Workflow」の4種類のワークフローだ。
![]() |
| 図1 リッチWebにかかわるディベロッパに大きくかかわってくるのは「RIA Workflow」 |
Macromediaは、ディベロッパが扱い慣れたXMLとスクリプト言語でFlashアプリケーションを開発できるFlexを誕生させた。とはいえ、リッチWebの実現にはデザイナとディベロッパの連携が欠かせないことには変わりない。しかし、これまでデザイナとFlexを使うディベロッパの作業をシームレスに連携する手段はなかった。RIA Workflowのデモでは、MP3プレーヤの作成を例に、デザイナとディベロッパのシームレスな連携に実演。もはやそこにボトルネックはないことを示した。
![]() |
| 画面1 IllustratorでFlexアプリケーション(MP3プレーや)のUIを作成する。デザインはFlexBuilderでの画面設計にシームレスに取り込むことができる |
デモは、MP3プレーヤのUIをIllustratorで作成後、ムービークリップとして書き出した。次にFlex Builder上でこれらをCSSに定義すると、Flex Builderのデザインモード(GUIで画面設計できるモード)でのIllustratorで作成したボタンなどのUI部品を配置できるようになる。適当な位置にUI部品を配置し、それぞれにアクションを定義してMP3プレーヤを完成させた。
従来、Flexのディベロッパは、デザイナがデザインカンプとして作成したデータをそのまま使うことはできず、デザインカンプを参考にしながら、画像を切り出すなどの作業を経てUIを作り上げなければならなかった。しかし今後はデザイナの成果物をシームレスにFlex Builder上の開発に生かすことができるため、デザイナとディベロッパの境界は埋められることになる。
さらに、スニークプレビュー(各製品の開発途中の新機能を披露)では、Fireworksを使ってUIデザインからクライアントへのデザインレビュー、Flex Builder上の開発までをシームレスに連携するデモが披露された。FireworksにはFlexと同様のUIコンポーネントが用意されており、それらをマウスでフォームに配置していくことにより、FlexアプリケーションのUIデザインのプロトタイピングが行える。
クライアントに見せるためのデザインのバリエーションを容易に複数作成することも簡単だ。作成したデザインはHTMLとして保存、しかも複数バリエーションの切り替えをナビゲートするボタンメニューも自動生成できる。クライアントはWebブラウザ上で、実際のWebアプリケーションに限りなく近いデザインを見ながら検討することもできる。
デザインが決定したら、FireworksでFlex Builderの画面定義ファイルであるMXML形式のファイルを出力。これでFlex Builder上で画面設計の作業をすることなく、コードを追加してアプリケーションを作成することができるというわけだ。デザイナによる画面設計、クライアントへのレビュー、Flex Builderへのデザインの取り込みまでをシームレスにフロー化するFireworksの新機能は次期バージョンへの採用が確定したわけではないものの、ディベロッパは期待したい機能だ。
![]() |
| 画面2 FireworksでFlexの画面を設計する |
注:Illustrator ― Adobeが開発したベクターグラフィック編集ソフト。イラスト作成やチラシ・小冊子のデザインにおいてDTP業界のデファクトスタンダード。 注:Fireworks ― Macromediaが開発したベクターグラフィック編集ソフト。Webページの画像作成を主用途とする。よってRGBのみに対応し、CMYKに対応していない。ベクターデータとビットマップデータの両方を扱うことができる。AdobeとMacromediaの合併によってAdobe製品となっている。 |
■帳票とWebアプリケーションの境界をなくすFlashとPDFの融合
MAXで紹介された4つのフレームワークの1つ「Electronic Document Workflow」は、従来の帳票とWebアプリケーションをシームレスに連携するワークフローだ。デモでは帳票をスキャンしてPDF化、さらにAdobe LiveCycleを使ってフィールドを認識しPDF入力フォームを自動生成させた(この機能は次期のLiveCycle製品に実装される予定)。
このPDFフォームはFlex BuilderによりFlashベースの入力フォームにもできる。さらに、FlashアプリケーションとPDFフォームとの間での、シームレスなデータ交換も自在だ。Flashベースのインタラクティブなフォームにデータを入力し、PDFのドキュメントとして生成することも可能。デモではユーザーから申請された保険申請のPDFドキュメントを、インタラクティブなFlashアプリケーション上で修正、PDFとリアルタイムにデータ連携することで、正しい情報に修正された自動車損害保険申請書がPDFドキュメントとして完成する様を披露した。
![]() |
| 画面3 FlexアプリケーションとPDFフォームが連携した自動車損害保険申請書作成のデモンストレーション |
企業のビジネスプロセスにはいまだ紙文書が介在するケースがほとんどだ。紙とアプリケーションの間がプロセスのボトルネックとなるケースが多い。LiveCycleとFlash、Flexの連携は、これらの境界を超えるための回答の1例を示している。
■Webブラウザの枠を超えたサービスプラットフォーム“Apollo”
Apolloは、デスクトップでFlashベースのアプリケーションを実行するためのプラットフォームだ。ApolloはMAX以前から話題に上っていたプラットフォームだが、今回のMAXではeBayのオークションに参加できるアプリケーションやGoogle Maps、ワードプロセッサなどの本格的なデモを披露。Apolloの大きな可能性を予感させた。
![]() |
| 画面4 ApolloはHTML、Flash、PDFのスキルセットすべてを取り込み、デスクトップにリッチな表現力と、インターネット、ローカルリソースへの自在なアクセスを実現する |
![]() |
| 画面5 Apollo上で実現したeBayサービス |
デスクトップ上のFlashアプリケーションといえば2003年のMAXで発表されたCentralが思い起こされる。Webブラウザという枠にとらわれることなく、インターネットに接続でき、かつローカルリソースにもアクセスできるという点でCentralとApolloは大きな違いはない。CentralはMacromediaが提供するガジェット・アプリから天気予報やTVの番組表などのWebサービスを利用するパイロットプロジェクトだったのに対し、ApolloはWebサービスをデスクトップアプリケーションから利用する新しいビジネスモデル確立の機会をサービスプロバイダや開発者に提供した点が新しい。しかもAdobeは、今回Apolloを使った開発を行う企業のために1億ドルの投資資金を用意したと発表した。
Apolloアプリケーションの開発は、Flexアプリケーション開発のスキルセットがあればよい。Apollo上ではHTML、Flash、PDF、Ajax(JavaScript)を扱うことができ、Web開発のスキルセットもそのまま活用できる。さらには、WindowsとMac OSのクロスOSを実現している。Apolloの開発には、Flex Builder、Dreamweaver、Flash、LiveCycle Designer、PhotoShop、InDesign、コマンドプロントが活用できる。開発されたApolloアプリケーションは、Development Packageというパッケージ単位でApolloプラットフォームにデプロイされることで、クライアント上で実行可能になるという。
ApolloのWebブラウザベースのアプリケーションに対する優位性は、Webサービスとローカルリソースの両方にアクセスできたり、オフライン(スタンドアロン)で実行できたりすることだけにとどまらず、マルチウィンドウ、ドラッグ&ドロップ、クリップボードの利用など、普段デスクトップアプリケーションで使い慣れたインタラクションを実現できること。Webベースよりもユーザーにとって使いやすいエクスペリエンスを提供できる可能性があるのではないか。
関連記事 |
|
| ブラウザを飛び越えて進化するリッチクライアント 前編:スタンドアロン型リッチクライアントとは? 後編:スタンドアロン型の次世代デスクトップ環境を占う |
|
WCR Watch バックナンバー
- 第1回 リッチクライアントの最右翼FlexとFlashの違い
- 第2回 ビジネスFlashはWebを変革する、マクロメディア
- 第3回 FlashはJava開発者のものに成りうるか
- 第4回 MITで誕生したリッチクライアント技術、Curlとは?
- 第5回 Ajaxが追い風となるか? Open Laszlo
- 第6回 人・チームが成功の鍵となるリッチクライアント
- 第7回 アドビに引き継がれるマクロメディアのRIA戦略
- 第8回 バーティカルサーチはGoogleBaseに対抗できるか?
- 第9回 リッチクライアントがSOAをのみこむとき
- 第10回 Ajax開発環境を無償にしたTIBCOは勝ち組?
- 第11回 イベントに見る次世代リッチクライアント像
- 第12回 リッチクライアントの忘れ物? アクセシビリティ
- 第13回 2006年、SODECに見るリッチクライアント&帳票
- 第14回 ユーザー主導のリッチクライアント研究広がる
- 第15回 「使える、使いやすい、使いたい」と思えるUIとは?
- 第16回 Enterprise Web 2.0は本物か?
- 第17回 デスクトップを制するのはApolloかWPF/Eか
- 第18回 リッチクライアントの潮流とFlexのオープンソース化
ホワイトペーパー(TechTargetジャパン)
- いまさら聞けないTwitter超入門−@IT記事も対応なう (2010/2/4)
Twitterは最近話題のつぶやきツール。基本的な使い方から、iPhoneアプリの使い方、RTの解説、4人のご意見番の活用例や感想まで - HTML5は開発者側の都合。ユーザーには関係ない (2010/2/2)
3つのレンダリングエンジンを載せている“国産”ブラウザベンダは、HTML5やWeb/ブラウザの進化について何を語るのか - テキスト・フォント周りをキレイに見せるCSS、13選! (2010/1/29)
無数にあるCSSのプロパティを大まかに分類し、1つずつ紹介していく本連載。初回は、テキスト・フォント周りについて - OpenGL ESが大変な3Dアプリ開発を楽にするUnity (2010/1/27)
iPhoneゲーム開発に必須のOpenGL ES。そのコーディングに手こずっている方に有用なツールを紹介し簡単なサンプルを作成します
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |












