Ajaxの本質は非同期メッセージ型ウェブ・アプリケーション
中島聡氏のBlogよりメモ。ちょっと古いエントリですが。
第二世代のウェブ・アプリケーションのアーキテクチャーの本質は、XHTMLやXMLやJavascriptにあるのではない。その本質は、
- アプリケーションの明示的なインストールが必要ない。
- サーバーとの通信を非同期に実行することにより、通信遅延によりUIをブロックしない。
- サーバーとのやり取りは、RPCではなく、メッセージで行う。
- データ・バインディングはサーバー側ではなく、クライアント側で行う。
- UIにインテリジェンスがあり、ある程度はサーバーに戻らずにユーザーとやり取りをする。
の5点にある。この5点さえしっかりと守れば、開発言語はJavaであろうとFlashであろうとも良いし、サーバーとのメッセージにXMLを使わなくともかまわない。その意味で言うと、Ajaxという名前(J=Javascript、x=XML)がそもそもふさわしくしくないとも言える。単に、「非同期メッセージ型ウェブ・アプリケーション(Asynchronous Message-driven Web Application)」と呼ぶ方がずっと明確だし、特定の言語にしばられなくて済む。