Ajaxとは

Ajax(エイジャックス、アジャックス)とは、ウェブブラウザ内で非同期通信とインターフェイスの構築などを行う技術の総称で、代表的な技術にGoogleマップが挙げられます。XMLHttpRequestと呼ばれるHTTP通信を行うためのJavaScript組み込みクラスによる非同期通信を利用して、通信結果に応じてダイナミックHTMLで動的にページの一部を書き換えるというアプローチを取っています。このAjaxはAsynchronous (エイシンクロナス、非同期) JavaScript + XML の略で、Jesse James Garrettにより名付けられています。

 

これまでのWebアプリケーションでは、サーバにリクエストを送信した後、レスポンスを新たにウェブページとして受け取り画面遷移が発生していたのですが、Ajaxによって画面遷移を伴わない動的なWebアプリケーションの製作が実現可能になります。例えばWeb検索に応用することで、従来は入力確定後に行っていた検索を、ユーザがキー入力をする間にバックグラウンドで行うことによってリアルタイムに検索結果を表示していくといったことができます。また、Flashの用に別途プラグインを要求せず、Webブラウザのみで動作し、既存の技術の組み合わせであることが特徴でありメリットでもあります。技術自体はこの用語が発生する前から存在していたのですが、Ajaxという名前が付けられたこと、GoogleがGoogle マップやGoogle サジェストにこの技術を利用したことで有名になり、Webアプリケーションの可能性を広げるものとして注目され始めています。さらに、Googleでは、デスクトップアプリケーションと遜色のないメーラーであるGmailやGoogle Calendarでも積極的にAjaxを採用しており、Ajaxの実用性がGoogleのWebアプリケーションを通じて世間に認知されはじめているといっても良いでしょう。

 

AjaxによるWebプログラミング(Webアプリケーション製作)が注目されだした背景には、従来のページ遷移のみに頼ったWebの使い勝手の悪さに対する不満や、XML、DOMなどのWeb関連技術の標準化(ウェブ標準)、および高い機能を持ったWebブラウザの普及などが考えられます。また、ダウンロード型のアプリケーションは、マニア層から先に広がりにくいのではないか、競合がOSメーカーとなったときに競争に負けてしまう、といった問題を抱えているために、ダウンロード型アプリケーションからWebアプリケーションに切り替える技術として、Ajaxが利用されていることが多いのもその要因でしょう。DHTMLが登場した当時は、単にお遊び要素に過ぎないと考えられていた動的ページでしたが、JavaScriptをより効果的に使うことで、業務や実用に耐える優秀なインターフェースを備えたアプリケーションをHTMLで作ることが可能であったという事実を世の中に知らしめたという意義をもつ技術であるといえます。

 

しかし、もちろん問題点もあり、従来の技術の組み合わせであるために、それぞれの持つ問題がそのままの形で残ってしまっています。 例えば、各種Webブラウザ間のDHTMLの実装の違いをコードで吸収する必要が出てきてしまうなどです。実際、Ajaxを実現する技術はブラウザ間で実装に違いがあって、基幹技術であるXMLHTTPRequest実装の元となったInternet Explorerの実装の解説ではXMLHTTPRequestという用語は見あたらないため、ActiveXでMSXML機能を呼び出して実行する必要があります。また、MSXMLの実装ではバイト配列を取り出せるなど機能的な違いもあります。また、言語としてVBScriptが使える点も異なります。

 

Ajaxアプリケーションでは動的にページの一部が書き換えられるので、デザインとコードが以前のように単純に分離できないという開発上の問題点もあり、このため、現在では通常のWeb開発に比べ開発により時間がかかると言われています。最近では、数多くのAjax用アプリケーションフレームワークが開発・公開され部分的に可能になってきているのですが、それでも完全ではありません。しかし現時点では成熟しつつあったWeb開発のデザインとコードの分離技術や開発体制で、Ajaxの登場によって一石が投じられているというのも事実です。


Valuable information




原宿 美容室 メンズ


名古屋のブランド買取ショップ



2021/7/15 更新