Ajax と CSI
なんか Ajax というのをあちこちで見かけるようになった.2004-12-11 にとにかく不思議に思った Google Suggest や,2005-02-07 にその操作性に驚いた Google Maps もみんな Ajax のおかげなんだよーん,ということでとりあえず興味津々だ.
ここ数日で,iTunes みたいな filer
とりあえず説明をざっと眺めてみる.ぶっちゃけ,今までサーバ側でやってた処理をクライアント側で,ということらしい.サーバとの通信は必要最低限のものとなり,非同期に行われるので,ユーザとアプリケーションの間に応答待ちが起きることなく,さくさく動くというわけらしい.
サーバの負荷も軽くなるし,こっちとしてもあまりサーバに余計なデータを送りたくはないので,魅力的ではある.
ん? Client Side Include (CSI) というのはこの一種と考えてよいのかな??うーむ,CSI はサーバとの通信が XML とは限らないから,厳密には違うんだろうけど,それは実装の問題で,技術的には根は同じと考えてよいのかな.よくわからんけど.
ただ,CSI の場合,ユーザ側がほとんど何もアクションを起こさず,表示されるデータをただ見てるだけだから,client side processing の恩恵が希薄なんだろうな.処理量と通信のトレードオフがシビアで,場合によってはかえって遅くなる (らしい).
ユーザ側のアクションが頻繁なアプリケーション (Google Suggest なら文字入力だし,Google Maps なら地図ナビゲーション) だからこそ,asynchronous のメリットが生きてくる.上に紹介した例はみんな,そのあたり上手いところを突いてきたなと思う.
まあ,素人の意見としては,面白いのでどんどんやってくれという感じ.ただ,w3m ユーザとしては,レガシーな Web アプリケーションも残しておいて欲しかったりするけど.
とかえらそうに書いてますが,実はまだいまいちわかっていない Ajax….