Ajaxの基礎知識

Ajaxの定義を考える皆さんはAjaxという言葉がなんの略かご存じですか?AjaxはAsynchronous JavaScript + XMLの略称で、Asynchronousは非同期という意味です。この言葉はデザインコンサルティング会社Adaptive PathのJesse James Garr

林 俊之

2008年5月2日 20:00

Ajaxの定義を考える

皆さんはAjaxという言葉がなんの略かご存じですか?

AjaxはAsynchronous JavaScript + XMLの略称で、Asynchronousは非同期という意味です。この言葉はデザインコンサルティング会社Adaptive PathのJesse James Garrett氏によって提唱されました。

その内容はadaptive pathの2005年2月18日掲載記事で読むことができます(出典:Ajax: A New Approach to Web Applications)。

その記事によればAjaxという具体的な技術があるわけではなく、既存技術の組み合わせによって定義されると述べられています(図1)。

では、それを満たさないとAjaxと言えないのでしょうか?

データ通信に関して最近ではJSONというフォーマットが主流でXMLを使うことは少ないですし、動的なデータ取得はXMLHttpRequest以外にもJSONP、iframeを使った手法などもあり、必ずしもXMLHttpRequestでなければできないということにはならないでしょう。その基準を一概にAjaxとは言うのは少し無理があるようです。

このことに関連して「Life is beautiful」という有名なブログを執筆されている中島聡さんが記事を書かれています(出典:Ajaxの本質、「非同期メッセージ型Web・アプリケーション」のススメ)。

筆者はこの記事に関して拡大解釈している点もあるかと思いますが、本質をついた適切な指摘だと思います(図1)。XMLやJavaScriptが大事なわけではなく、非同期メッセージでサーバと通信してUser Interfaceを提供するというWebアプリケーションの形態が重要なのだと述べられています。この記事はAjaxの表層的な面でなく、何が特徴的でどのようなメリットがあるかということを端的に示していると言えるでしょう。ぜひブログの記事本文もご覧になってみてください。

AjaxはWebサイトにおける1つの手段でしかない

Ajaxの登場により、AjaxとFlashのどちらが優れているのかという議論がされるようになりました。たしかにAjaxの技術でFlashとクロスオーバーするところは増えてきました。しかし、それぞれ得手不得手があるので実際はどちらが良い、悪いと決められるものではないでしょう。

動画や音声の扱いに関してはFlashの方が断然強力ですし、テキスト処理や表示に関してはHTMLの方が柔軟な処理ができます。先ほどの中島さんの記事からすれば、大きな枠組みで言ってFlashもAjaxテクノロジであるとも言えます。どちらも次世代のWebプラットホームを担う重要な技術です。適材適所でうまく共存させていくのが正しい使い方だと執筆は考えています。

Ajaxという言葉は具体的な技術を指し示すものではないので、完ぺきに定義することは少し難しく、それはWeb 2.0と似ていると言えるでしょう。ただ、この言葉が生み出されたことによってJavaScriptが見直され、技術者に注目されるようになり、ひいてはWebブラウザそのものが見直され、現在のWebブラウザ再戦争のきっかけの1つとなりました。結果として、言葉が定義されるということの重要さをあらためて認識させられたと言えるでしょう。

また、当たり前のことですがAjaxを使うこと自体が目的ではなく、ユーザ体験を向上させること、ひいてはより良いWebサイト・サービスを作るための手段の1つにすぎません。使用については適切にAjaxの本質を見極める必要があると言えます。

次ページでは、Ajaxを効果的に使ったWebサイトを紹介します。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30