なぜMS系でクリエイティブか?
Webにおける表示テクノロジーの変遷
最終回となる今回は、Silverlight、FlashをはじめとするRIAテクノロジーが注目される中、制作会社として何を押さえておくべきかについて紹介します。
Silverlightというテクノロジーを考えるとき、一番身近な存在としてのFlashは誰にでも容易にイメージがわくと思います。これらのいわゆるRIA(Rich Internet Applications)テクノロジーの共通の特徴を挙げるなら、それは「Webブラウザにプラグインを導入することで稼働するプラットフォーム」「クロスブラウザ・クロスプラットフォーム」「非同期通信と、クライアントサイドでのダイナミックな表示」の3つの項目になるでしょう。
これらのRIAテクノロジーに対して、単純なHTMLやAjaxなどとのかかわりは、図1のようになります。
単純な静的HTMLから、ASPやJSPなどのサーバーサイドで動的に生成されるHTML、Ajaxというサーバーと非同期で動作するクライアントテクノロジー、そしてFlashやSilverlightなどのブラウザプラグインを必要とするが、HTMLの表示構造からは切り離されたWebアプリケーションとして動作するRIAプラットフォームという流れです。
最近では、Ajaxも非常に成熟してきており、案件や予算によってはJSPやPHPのバックエンド+Ajaxのフロントエンドなどの組み合わせで、システムとして十分な場合も少なくありません。
では、なぜそこに、RIAというAjax以上にリッチなプラットフォームが必要とされるのでしょうか。
RIAの必然性
ここで言うリッチとは、見た目が優れているということではなく、そこで実現される体験がリッチということです。
Webブラウザが何かを閲覧するための道具にしか過ぎず、その中で動くアプリケーションも基本的には閲覧ツールの延長上の産物でしかなかったころは、それなりの機能で十分でした。しかし今、私たちはブラウザを通じてネットの世界にあるモールで買い物をし、何かの申し込みをし、他者に対して積極的に情報を発信しています。それはもはや、何かの作業を遂行するためのアプリケーションであり、私たちはそこに自然と、デスクトップ並みの操作性を求めています。そしてそれを実現するのが、RIAテクノロジーなのです。
では、RIAで実現されるリッチさとは何なのでしょうか。それには大きく分けて「ユーザビリティ(操作性)」「レスポンシビリティ(応答性)」「メンテナンシビリティ(保守性)」の3つが挙げられます。
ユーザビリティについては、ユーザーに伝えたい情報の構造と、ユーザーから受け取りたい入力内容に応じた、きめ細かなインターフェースの提供、それによって実現される操作性が挙げられます。
レスポンシビリティについては、非同期通信によって実現されるページ切り替えのない連続的なデータ表示と、クライアントサイドでViewを直接操作可能なことによる、表示切り替えの軽快さが挙げられます。
メンテナンシビリティについては、画面表示のための処理(プレゼンテーションレイヤ)と画面には表示されないが裏側で動作する様々な処理(ビジネスロジックレイヤ)の物理的な切り離しによる、アプリケーションモデルのシンプル化と、それによる各レイヤ同士のコラボレーション実現が挙げられます。
とはいえ、これまでRIAテクノロジーの世界にはFlashというデファクトスタンダードが君臨し続けていました。なぜ今さらそこに、Microsoftが乗り出すのでしょうか。