Ajaxライブラリ ~ 基本、種類、関連情報などのまとめ

2009年3月4日

Ajaxアプリケーションの開発に役立つAjaxライブラリの関連情報をまとめて紹介


Ajaxライブラリは、JavaScriptでAjaxアプリケーションを開発する際に用いるライブラリです。

Ajaxプログラミングでのデータの操作、画面のエフェクト、Webサーバとの通信などの高度な機能を簡単に実現でき、プログラミングの手間を省き、Webブラウザごとの命令や動作の違いを吸収し、バグの発生を減少させてくれます。

C言語やJava言語では標準的なライブラリや定番のフレームワークが存在しますが、Ajaxではさまざまなライブラリが登場し、それぞれ競って開発を進めています。

ここでは、Ajaxライブラリの総合的な情報を紹介します。

Ajaxライブラリを選ぶ

細かいものまで数えれば優に100を超える数のAjaxライブラリがあります。その中で、どのAjaxライブラリを選択すればいいのか、個別にAjaxライブラリのドキュメントを読んでいく以外に、参考になるまとまった情報は実はそれほど多くありません。

Ajaxian

まずはシェアをみてみましょう。どのAjaxライブラリがよく使われているのか、AjaxのオンラインマガジンであるAjaxianの2008年の記事が伝えています。

記事によると、570人からの回答のうち最も人気が高かったのはjQueryで144票、わずか1票差でprototype.jsが続き、Script.aculo.usが127票、Yahoo! UI Libraryが99票、Ajax for ASP.NETが91票、Mootoolsが65票、Dojo、ExtJsと続いていました。

JavaScript Library Overview JavaScript Library Overview - Slideshare
jQueryの作者、John Resig氏による各種Ajaxライブラリの概要説明と、主な機能ごとのそれぞれのAjaxライブラリの対応状況など

その最も人気のあるAjaxライブラリの1つ、jQueryの開発者であるJohn Resig氏が、オープンソースのAjaxライブラリとしてよく知られるprototype.js、jQuery、MooTools、Dojo、Yahoo! UI Libraryについて、それぞれの位置づけ、特徴などを解説したプレゼンテーションが2008年10月に公開されています。

このプレゼンテーションの中から、各Ajaxライブラリの特徴を3つずつ抜き書きしてみましょう。

prototype.jsの特徴

  • Improving the usability of the JavaScript Language
  • Big emphasis on adding in 'missing' JavaScript features
  • Code quality is fantastic, great features
  • All animations ( and interactions) are in Scriptaculous

jQueryの特徴

  • Corporate backing(Microsoft,Nokia)
  • Improving the interaction between JavaScript and HTML
  • Highly-effective,short,code

Yahoo! UIの概要

  • Attenmpt to standardize internal JavaScript
  • Exposing, and solving,common methodologies
  • Looking for common idioms(Drag-and-Drop,Calendar,Auto-complete)

Dojo Toolkitの特徴

  • Large development community
  • Corporate backing(IBM,AOL)
  • Focus has transcended into widgets(Digit)

Mootoolsの特徴

  • A spiritual fork of Prototype that included animations,drag and drop, etc.
  • A clean classical structure
  • A more holistic approach to development

マイコミジャーナルでもこの記事の内容を完結に伝えています。

Ajaxライブラリの仕組みと機能

Ajaxライブラリの役割や機能についての概要を紹介した記事です。

John Resig氏は一般的にAjaxライブラリがどのような問題を解決し、そのためにどのような実装を行っているのかといった技術的な詳細について情報発信しています。以下に2つ紹介しましょう。

Building a JavaScript Library Building a JavaScript Library - Slideshare
jQueryの作者、John Resig氏によるAjaxライブラリをどのように実装しているかについての解説(英語)
John Resig: "Advancing JavaScript with Libraries"/1 of 2 John Resig: "Advancing JavaScript with Libraries"/1 of 2 - Yahoo! Video
米Yahoo!にて、AjaxライブラリによりDOMの機能をいかに拡張できるか、といったビデオセミナー(英語)

左のプレゼンテーションシートは2007年の資料ですが、jQueryの開発チームは25人以下のチームだと書いてあります。開発にあたってはAPIの直行性、API名称の一貫性などに配慮、さらにjQueryで実現されている機能などを解説しています。

右のビデオセミナーでは、Ajaxライブラリによって拡張されたAPIがどのような機能を提供しているのか、なぜライブラリが作られたのかを、ブラウザの互換性やDOMが抱えていた問題、それをどのように解決しているかなどが本人の口から語られています。

Ajaxライブラリのリスト

Ajaxライブラリにはどのようなものがあるのか、そのリストや特徴などを解説した記事を紹介しましょう。

JavaScript Library Archive
  • JavaScript Library Archive - to-R
    JavaScriptライブラリをまとめたサイト。用途別に探すことができ、配布元、使用方法、ライセンスなどについて解説している
  • Ajax (JavaScript) Library List (Ajaxライブラリ一覧) - 古籏一浩
    Ajaxライブラリをprototype系、jQuery系、MooTools系、コンパクト系、エフェクト系など特徴ごとに分類しリストアップしている。日本語で読めるリストとしては恐らく最も幅広く網羅しているリスト
  • Webアプリに使えるAjaxライブラリ8選! - @IT
    2006年に執筆されたためやや古い情報ながら、Prototype.js、jQuery、MochiKit、script.aculo.us、Rialto javascript API、Rico、Dojo Toolkit、Yahoo! User Interface Libraryの8種類のライブラリを関数の機能や視覚効果などの切り口で詳しく比較している
画面付きで80種類のAjaxライブラリを紹介

Googleによる主要なAjaxライブラリの配布

AJAX Libraries API - Google Code

Googleは、主要なAjaxライブラリの配布を独自に開始しています。これを利用すればGoogleサーバから配布を受けることができるので、自分のサーバにAjaxライブラリを置く必要がなくなり、サーバの負荷やネットワーク帯域の削減に役立ちます。

2009年3月時点でGoogleが配布しているAjaxライブラリ

  • jQuery
  • jQuery UI
  • Prototype
  • script.aculo.us
  • MooTools
  • Dojo

Ajaxおすすめ書籍

Ajaxライブラリリファレンス Ajaxライブラリリファレンス
prototype.js、script.aculo.us、Rico、moofx、Lightboxなど14種類のAjaxライブラリの主要な命令を1冊のリファレンスにまとめたもの(目次
Ajaxライブラリで かんたんインターフェイスデザイン Ajaxライブラリで かんたんインターフェイスデザイン
デザイナー向けに、jQuery、Mootools、Spry、Y! UIなどのさまざまなAjaxライブラリを用いることで手軽に実現できる視覚効果の高いユーザーインターフェイスを80種ピックアップ。カラー画面とソースコード付き(目次
このエントリーをはてなブックマークに追加
follow us in feedly




カテゴリ

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本