
Ajax解体新書(3)
Webアプリに使えるAjaxライブラリ8選!
株式会社NTTデータ
技術開発本部 ソフトウェア工学推進センタ
川田 洋平
2006/11/22
| 第1回「Ajax技術の目に見えない通信内容をのぞいてみよう」ではAjaxの技術背景を、第2回「Ajaxの特徴に潜むリスクをサンプルアプリで確認しよう」ではAjaxのセキュリティリスクを見てきました。第3回の今回は、Ajaxの本格的な開発には欠かせないAjaxライブラリについて見ていきます。 |
| 本記事は2006年に執筆されたものです。Ajax全般の最新情報は「リッチクライアント & 帳票フォーラム」総合目次のカテゴリ「実践Ajax」や「Ajax技術解説」をご参照ください。 |
| Ajaxライブラリの全体像を把握しよう |
Ajaxライブラリ(*注1)はすでに数多くのものが出回っていますが、多過ぎて全体像がつかめていないのではないでしょうか。今回は代表的なAjaxライブラリの一部を挙げ、それぞれを比較しながらAjaxライブラリの全体像を把握していきたいと思います。
| (*注1)再利用可能なプログラムの機能上の集合を表す用語・分類として、「ライブラリ」「フレームワーク」「ツールキット」等がありますが、本連載ではそれらを便宜上まとめて「ライブラリ」と呼ぶことにします。 |
| どうして、Webアプリ開発にAjaxライブラリが必要なのか |
- - PR -
初めにAjaxライブラリの必要性について見ていきたいと思いますが、ここではAjax開発ならではのライブラリの必要性を2点取り上げます(ほかの言語のライブラリと共通する必要性はあらためて取り上げません)。
■クロスブラウザ対応
Ajaxの利点として、さまざまな環境における一般的なWebブラウザ上で実行できることが挙げられます。しかしWebブラウザの実装によりAjaxの解釈が異なるケースがあります。
各Webブラウザ間、さらには同じWebブラウザでもバージョン間によって解釈が異なることもあり、それぞれに対応したAjaxプログラミングを行うのは非本質的な作業です。
異なるWebブラウザでも同様に動作するように、実装間の差異を吸収してくれる機能を提供するのがAjaxライブラリの1点目の必要性です。
■豊富な機能の提供
Ajaxで利用するJavaScriptは、ほかのJavaやRubyのような言語と比べて標準で用意されている関数が少ないことが挙げられます。
特にAjaxでは非同期通信処理やDOM(Document Object Model)処理を標準で用意された関数のみで実装しようとなると煩雑なプログラムになりがちで、これもまた非本質的な作業です。開発効率を向上させる豊富な機能を提供するのがAjaxライブラリの2点目の必要性です。
| 150以上も出現しているAjaxライブラリ |
現状ではWeb上に数多くのAjaxライブラリが出回っています。それらAjaxライブラリの一覧を提供しているサイトから数を挙げるとすると、“AJAX Matters Blog”では102個、“Ajaxian.com 2006 Survey Results”では150個以上のAjaxライブラリの名前が挙がっています。これだけ多いとすべてを調べ上げるのは大変な作業となります。
今回はそれらAjaxライブラリの中から代表的なものを取り上げ、比較を行いながら全体像をつかんでいきたいと思います。
| 8つのAjaxライブラリから全体像を見ていこう |
主に以下の基準で8個のAjaxライブラリを選定しました。
|
これらの基準で以下の8つのAjaxライブラリを、選定しました。
次ページで、これらのAjaxライブラリについて整理します。
| 1/4 |
|
INDEX |
||
| Webアプリに使えるAjaxライブラリ8選! | ||
| Page1<Ajaxライブラリの全体像を把握しよう/どうして、Webアプリ開発にAjaxライブラリが必要なのか/150以上も出現しているAjaxライブラリ/8つのAjaxライブラリから全体を見ていこう> | ||
| Page2<Ajaxライブラリを比較する> | ||
| Page3<Ajaxライブラリを機能で分類する> | ||
| Page4<Ajaxライブラリを利用する際の注意点/標準化が進むAjaxライブラリ/プロジェクトに最適なAjaxライブラリは見つかりましたか?> | ||
Ajax解体新書 バックナンバー
- 第1回 Ajax技術の目に見えない通信内容をのぞいてみよう
- 第2回 Ajaxの特徴に潜むリスクをサンプルアプリで確認しよう
- 第3回 Webアプリに使えるAjaxライブラリ8選!
Googleからのサプライズ、Google Web Toolkit
JavaアプリをAjaxアプリに変換できる開発ツール、Google Web Toolkit。まずは、簡単なサンプルを動かしてみよう
- 第1回 JavaをAjaxに変換するグーグルのGWTを使ってみよう
- 第2回 GWTとYahoo!のAPIを使って画像検索アプリ!
- 最終回 JavaScript×HTMLとJavaのシームレスな開発環境
| Ajaxフレームワーク「Spry」で作る「リンク集2.0」 特集:AdobeのAjaxフレームワーク「Spry」を使ってみよう アドビのAjaxフレームワーク「Spry」。さっそく簡単なリンク集のサンプルを作成しながら、その機能を探ってみよう 「リッチクライアント & 帳票」フォーラム 2006/6/21 |
||
| 古くて新しいAjaxの真実を見極める 「Webインターフェイスの新しい手法」「画期的なWebアプリケーションの仕組み」であるとして開発者たちの人気を集めるAjaxとは何なのか、その真実を見極めてみよう 最終更新 2005/8/2 |
||
Ajax うきうき Watch
Ajaxという流行技術の定義を明確にしながら、Ajaxの動向からうきうきするような面白いもの、確実に押さえておきたいものを厳選してお届けしていく
- 第1回 Webアプリのユーザビリティを改善しまくるAjax
- 第2回 Ajax、それはWeb 2.0へと続く道
- 第3回 どんなに無茶をやっても「それもありかな」なAjax
- 第4回 自動車業界のAjaxを活用したキャンペーンを目撃せよ
- 第5回 “どのブラウザでも動くAjax”を共有財産として育てよう
- 第6回 プロプライエタリ2.0から考えるAjaxの公開/非公開部
- 第7回 メモリリークが小さくなったGoogle Maps APIの新版
- 第8回 “CGUI” 消費者が作り出すUIの時代突入
- 第9回 巨大化するAjaxライブラリをシンプルにする新たな流れ
- 第10回 地図のように年代を移動できるMITのAjax歴史年表
- 第11回 JSONがRFCになり、どんどんこなれるAjaxサービス
- 第12回 サーバが通信を開始できるComet活用Webチャット
- 第13回 オンラインゲームで検索精度を上げるGoogleの巧みさ
- 第14回 IE7とFirefox 2への利用者の大移動は起こるか?
- 第15回 グーグル検索エンジンを特定ジャンル専用に、Co-op
- 第16回 帯域やデバイス領域をフル活用させる“モバイルAjax”
- 第17回 新しい技術を模索するYahoo!、Google、MS
- 第18回 Ajaxの高度な使用例、Yahoo! pipes
- 第19回 Apollo参戦でウィジェット開発者の争奪戦が激化
- 第20回 Twitter登場で注目されるRTコミュニケーションツール
- 第21回 過熱するTwitterブームとMicrosoftのマッシュアップ
- 第22回 iPhoneのAjax戦略、そして今日もWeb APIは増加する
- 第23回 Ajax開発者がヒーローになるとき、それはいま!
- 第24回 携帯電話への拡張を進めるGoogleとWeb隠しコマンド
- 第25回 Ajaxで加速!? エンタープライズ2.0とWebOSの普及
- 第26回 「言葉」を超えた説得力を持つAjaxの存在感と広がり
- 第27回 ゲームから読み解く、俺スクリプト時代の知的な挑戦
- 第28回 マッシュアップ元年が終わり、2008年はどうなる?
- 第29回 Twitterやクラウドへも分岐するAjax/Web APIの道
- 第30回 Ajaxはじめて物語、そしてサーバでも動くJavaScript
- 第31回 新ブラウザ戦争はon fireだがJavaScriptはoffのナゾ
- 第32回 Google App EngineはAjaxへのハードルを下げるか?
- 最終回 Pure JavaScriptの動画再生やRPGも好きでした
ホワイトペーパー(TechTargetジャパン)
- いまさら聞けないTwitter超入門−@IT記事も対応なう (2010/2/4)
Twitterは最近話題のつぶやきツール。基本的な使い方から、iPhoneアプリの使い方、RTの解説、4人のご意見番の活用例や感想まで - HTML5は開発者側の都合。ユーザーには関係ない (2010/2/2)
3つのレンダリングエンジンを載せている“国産”ブラウザベンダは、HTML5やWeb/ブラウザの進化について何を語るのか - テキスト・フォント周りをキレイに見せるCSS、13選! (2010/1/29)
無数にあるCSSのプロパティを大まかに分類し、1つずつ紹介していく本連載。初回は、テキスト・フォント周りについて - OpenGL ESが大変な3Dアプリ開発を楽にするUnity (2010/1/27)
iPhoneゲーム開発に必須のOpenGL ES。そのコーディングに手こずっている方に有用なツールを紹介し簡単なサンプルを作成します
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |






