RIAとは?
twitterでみつけたエントリ
Rich Internet Applications (RIAs) – Shyamala's Blog
を無許可日本語訳。
-
-
- -
-
リッチ・インターネット・アプリケーション(RIA)――これは、最近よく聞くバズワードである。リッチ・インターネット・アプリケーションは2002年にMacromediaで生み出されたが、数年前まではあまり一般的ではなかった。しかし、Web 2.0ブームで、RIAはWeb界に確固たる地位を得た。
RIAとは何か
以前のWebは一方向通信システムとして知られていた。企業はこれを使ってエンドユーザーに企業情報を紹介するのだ。Web 2.0の出現により事情は大きく変わった。Web 2.0はWWWに全く異なる人格を与えた。一方向通信システムだと認知されていたWebにおいて、Web 2.0は双方向コミュニケーションを実現した。そこではユーザーが王であった。ユーザーは、コメントし、評価し、つながり、タグをつけることができる。
このような柔軟性と同時に、Web 2.0は新しいツールとテクノロジーと概念をたくさん連れてきた。Ajax、Adobe AIR、Adobe Flex、Silverlight、Isomorphic SmartClientなどだ。これらの概念とともに、リッチなWebアプリケーションを作成する流行が訪れた。そこでRIAが登場するのである。
リッチ・インターネット・アプリケーションにおいて「リッチ」とは何を意味するか?
リッチ・インターネット・アプリケーションは、デスクトップ・アプリケーションの柔軟性と応答性をWebの幅広いリーチに結びつけたアプリケーションである。RIAはユーザーに柔軟性を与え、デスクトップ・アプリケーションの使い勝手でWebアプリケーションを利用できるようになる。
リッチ・インターネット・アプリケーションにおいて「リッチ」とはどんな概念なのか?
豊かさという概念は2つに分けられる。
- ユーザ・インタフェースの豊かさ
- データモデルの豊かさ
ユーザ・インタフェースの豊かさ
リッチ・インターネット・アプリケーション(RIA)はデータ・モデルと賢くやりとりできるUIコントロールを豊富に提供する。それらの一部は以下の通りである:
オートコンプリート・コントロール
ツリーグリッドコントロール
チャートコントロール
カレンダー・コントロール
リッチテキスト・エディタ・コントロール
インライン編集コントロール
自動保存コントロール
データモデルの豊かさ
どんなWebサイトまたはアプリケーションもデータがなければ不完全である。したがって、データを取ってきたり制御したりするためのリッチなデータ・モデルを持つことは重要である。データ・モデルの豊かさとは:
- 非同期でデータを送受信する能力
- ページ全体を書き直さずにサーバーからデータを得る能力
- データの変更部分だけを送信することでネットワーク帯域幅を効率的に利用すること
- 洗練されたデータ・モデルのサポート
RIAの分析
Adobeは、あるプレゼンテーションで次のようにRIAを紹介した。
リッチ・インターネット・アプリケーションの利点
リッチ・インターネット・アプリケーション(RIA)は、多くの利益をエンドユーザーに与え、開発者と会社にも同様に与える。利益の一部は以下の通りである:
エンドユーザー向け
- 応答性と対話性
- リアルタイム・コミュニケーション
- 速くて使いやすい
- ユーザーがリモートからデータをモニターして管理できる
- タスクをより速く完了できる
- クロスプラットフォームのサポート
ビジネス向け
- 顧客ロイヤルティの増加
- 新規顧客の獲得
- 生産性の増加
- サイト訪問時間の増加
- 帯域幅および運用コストの減少
開発者向け
- 学習が簡単
- 開発が容易
RIAツールとテクノロジー
リッチ・インターネット・アプリケーション(RIA)という用語自体は新しいかもしれないが、RIAが使用するテクノロジーはすでに存在していたテクノロジーの組合せである。もっとも一般的に用いられるRIAツールとテクノロジーは以下の通りである:
RIA技術
- Ajax(非同期JavaScriptとXML)
- XML
- JavaScriptオブジェクト表記法(JSON)
- 先進的なJavaScript
UIフレームワーク
- Adobe Flex
- Microsoft Silverlight
- Google Web Toolkit(GWT)
- Isomorphic SmartClient
- Java Server Faces(JSF)
JavaScriptフレームワーク
- Yahoo UI(YUI)
- JQuery
- Prototype
- Scriptaculous
- Dojo Toolkit
- Mootools