くそげー日記

果たして自作FPSは完成するのか!?
wikiで晒し中: http://www11.atwiki.jp/slice

で,Ajaxて何なの?

2012-03-01 00:49:29 | Weblog
AjaxはAsynchronous JavaScript + XMLの略で~

ま,ご大層な名前が付いてるが要するに
「非同期に」「JavaScript使って」「XML形式で」データをやりとりするって事.
目新しい何かではなく,既存技術の寄せ集め.特に2,3番目はそのまんまだね.

ちなみに「XML形式で」とは言っても別にXMLでなくても良くて
今だと容量と処理の軽さからJSONが多く使われているようだ.
なんならプレーンテキストやバイナリでもOK.

非同期にというのも読んで時の如くなのだが,
じゃあ従来の同期的なデータ送受信って何なの?と言えば
例えばHTMLページを読み込む=データ受信で,
フォームの送信ボタン押して次のページ移る時がデータ送信だったよね.

これが非同期になるのだからページ移動を伴わなくてもデータの送受信が出来るって事になる.
そうすると何が嬉しいか?

画像ファイルを沢山張ってあるページなら画面内に入ってる物だけ適時読み込むとか
リストボックスを選択したら即座に詳細を表示させたり出来る.
文字を入力した時点で次々と候補を返すgoogleサジェストとかもそう.

でもリクエストが非同期に出せるとはいえ,通信の発端はいつもこちらな訳で
当然「なにか情報が届き次第サーバから通知を送って欲しい」という要求には答えられそうもないね.
だからtwitterなんかでやってる「新しいツイートが届き次第画面に表示」なんてのは
ポーリングでもしない限りAjaxだけでは駄目という事になる.

そこでNode.jsとか言う奴の出番らしいが,自分はよく知らん.