« Flashでのユーザーのトラッキング | main | 傾斜/加速度センサ »

2005年03月22日

javascriptによるRIAの構想:ajax

Ajax: a New Approach to Web Applications

google suggest, google maps, gmail, etc...
近年のgoogleがflashのお株を奪うってしうまうようなjavascriptベースのリッチウェブ・アプリケーションを作り始めました。

このようなコンセプト自体はflash使いには目新しくないのですが、今まで技術的障壁で守られていた業界にjavascriptや他の技術の人達が流れてきたことで、今後は色々と大変そうです。

adaptive pathというデザインコンサルタントが、このような技術に『Ajax』と名づけ、その動作原理を詳細に説明しています。既にde.lici.ous周辺で注目されてますが、非常によい文献です。以下、同文書のサマリ。

<注>
本文章は、vas-animatum.netのブログにおいて執筆され同文を、ドメイン移転にともない保存したものです。

Ajaxの定義
Ajax(Asynchronous JavaScript + XML、非同期なJavascriptとXMLの連携)は単一の技術ではなく、複合的な技術の呼称である。

・XHTMLとCSSによる基本レイアウト
・Documentオブジェクトを使用した、ページの動的変更
・XML,XSLTを使用したデータのやりとりや制御
・XMLHttpRequestを用いた動的なデータ検索
・JavaScriptによる上記技術の統合

従来のアプリの問題点は、全ての動作がhttpリクエストを送り、毎回サーバーサイドでデータを成形しなおさなければならなかった。その為にユーザーは処理毎に待たされることとなる。一度ユーザーインターフェースをロードしてしまえば、処理毎にサーバーと通信する必要はないのではないか?というのがAjaxの基本的な考え方となる。


Ajaxはどのように異なるか
Ajaxのコンセプトでは、ユーザーとサーバーの間に中間層となるAjaxエンジンを置く。初回のセッションでは、ウェブページをロードする代わりに Ajaxエンジンを読み込む(これは通常隠しフレームに読み込まれる)。Ajaxエンジンは、レンダリングとインターフェースの制御を担当し、ページとは非同期にデータをサーバーから読み出す。これによりサーバの処理待ちで、画面が真っ白の状態で待たされることはない。

ユーザーの全てのアクションはhttpを直接呼び出すのではなく、JavaScriptによってAjaxエンジンを呼び出す。 DataValidation等のサーバーが必要としない処理はAjaxエンジンが自ら行い、外部のデータや追加のコードをを必要とするときのみサーバーとの通信を行う(主としてXMLが用いられる)。


誰が使っているのか
google社が巨大な投資を行っている。
orkut, gmail, google suggest, google maps, flicker etc...
これらは、Ajaxが技術的なデモではなく実用的なものであることを証明している。
google suggestのような単機能から、google mapのような巨大なものまで、適用範囲は多岐にわたる。Ajaxはまだ初期段階であり、その可能性は拡大中である。今後多くの組織がgoogleの示す方向性に従うだろう。


進歩
Ajaxの用いる技術自体は成熟した技術である。Ajaxの最大の挑戦は、デザイナーがwebアプリの限界を忘れ、より大きな可能性を想像することである。


超雑ですがこんな感じ。
足りないこと、間違いがあったらコメント欄で教えていただければ追記します。


<追記>
3月13日に原文にQ&Aの項目が追加されました。これにつきましては以下のページで和訳してあります。

投稿者 Taka : 2005年03月22日 22:46

book

dotfla.gif

bookmark

はてなブックマークに追加

del.icio.usに追加

trackbacks

this entry's trackback URL:
http://www.fladdict.net/cgi-bin/mt3/mt-tb.cgi/1

このリストは、次のエントリーを参照しています: javascriptによるRIAの構想:ajax:

» Pay Day Loans from Pay Day Loans
Pay Day Loan - Quick Pay Day Loans [read more]

トラックバック時刻: 2006年02月01日 00:28

» Payday Cash Advance Loans from Payday Cash Advance Loans
Payday Cash Advance Loans [read more]

トラックバック時刻: 2006年02月01日 00:33

» Refinance from Refinance
Refinance [read more]

トラックバック時刻: 2006年02月13日 14:25

» Closet and Room Organizer from Closet and Room Organizer
Closet and Room Organizer [read more]

トラックバック時刻: 2006年02月14日 05:43

» Mesothelioma from Mesothelioma
Mesothelioma [read more]

トラックバック時刻: 2006年02月17日 19:29

» Retirement Planning from Retirement Planning
Retirement Planning [read more]

トラックバック時刻: 2006年02月20日 22:07

» real estate investing from real estate investing
real estate investing [read more]

トラックバック時刻: 2006年02月25日 10:03

» color contacts from colorcontacts
color contacts [read more]

トラックバック時刻: 2006年02月26日 07:24

» IRS from IRS
IRS [read more]

トラックバック時刻: 2006年03月03日 10:14

» Vioxx from Vioxx
Vioxx [read more]

トラックバック時刻: 2006年03月04日 01:56

» http://chinaeconomics-CEHI.blogspot.com from http://chinaeconomics-CEHI.blogspot.com
http://studentcreditcard-OStV.blogspot.com [read more]

トラックバック時刻: 2006年03月04日 07:23

» http://economicsarticle-CnvQ.blogspot.com from http://economicsarticle-CnvQ.blogspot.com
http://automanualrepair-SrqE.blogspot.com [read more]

トラックバック時刻: 2006年03月04日 12:46

» Digital Camera Review from Digital Camera Review
Digital Camera Review [read more]

トラックバック時刻: 2006年03月04日 19:19

» Printing from Printing
Printing [read more]

トラックバック時刻: 2006年03月12日 13:12

» dj equipment from dj equipment
great! [read more]

トラックバック時刻: 2006年03月22日 07:10

» dj equipment from dj equipment
great! [read more]

トラックバック時刻: 2006年03月22日 07:10

» VW Auto Parts from VW Auto Parts
VW Auto Parts [read more]

トラックバック時刻: 2006年03月23日 06:38

» dj equipment from dj equipment
great! [read more]

トラックバック時刻: 2006年03月26日 16:58

» latin dating from latin dating
[read more]

トラックバック時刻: 2006年03月28日 17:58

» black dating from black dating
g... [read more]

トラックバック時刻: 2006年03月28日 17:58

» asian dating from asian dating
asian dating [read more]

トラックバック時刻: 2006年03月28日 17:58

comment

ajaxの感想:
技術的には面白く展開しそうだと思います。
が、
開発しにくいような気がします。
javascriptでOOPが難しいしなぁ
デバッグやコーディング、コード管理、保守性とか
リファクタリングも大変そうだ。

ブラウザ互換の問題が第一の難関だ+_+

by arkw : 2005年03月23日 16:56

>開発しにくいような気がします。

そうですねぇ。新しいブラウザが出るたびに鬼のような修正がかかるのが(笑…
ただ小さいものならプロトタイプベースのOOPができるflashコーダーの人ならすぐに作れるかもしれません(ブラウザ依存を除けば…)

by Taka : 2005年03月24日 18:55

対応ブラウザを考えると大変そうですね。
ajaxだと、JavaScript、XMLHttpRequest、ブラウザの設定という三つの要素に動作が縛られてしまう可能性がある、というのがありますし。

そんな状況にも関わらず実際に動いていて、
みんなを驚かしている、というのはすごいですね。

by okumura : 2005年05月09日 02:20

僕も、Ajaxが本当に現実的なのかどうなのかイマイチつかめていません。
現状で見ているとリスクばかりが大きな気がするのですが・・・

とりあえず現状のajaxアプリが、NN8とIE7にどれだけの速度と作業量で対応できるかが、ハリボテか実用品かの別れどころじゃないかなぁ、と思ってます。

それにしても、JavaScript使いの人頑張ってますよね。

by Taka : 2005年05月09日 10:03

Nice site!
[url=http://uxqugbqu.com/snmc/uxut.html]My homepage[/url] | [url=http://bkpqtuqz.com/qawf/iyxv.html]Cool site[/url]

by Marla : 2006年04月01日 23:13

Nice site!
My homepage | Please visit

by Veronica : 2006年04月01日 23:14

by Phyllis : 2006年04月01日 23:14

コメントしてください




保存しますか?