このページを見ている方は、jQuery (ジェイ・クエリー) に興味を持っていると思います。すでにjQueryを使っている人もいるでしょうし、全く知らない人、名前だけは知っている人もいるでしょう。このページではjQueryとは何なのかについて説明します。
jQueryはJavaScriptライブラリの1つです。JavaScriptはアプリケーション(ブラウザを含む)を操作する言語として利用されていますが、そのJavaScript上で動作するライブラリです。ライブラリは、よく使う機能をいくつもまとめてあるものを示します。
JavaScriptのライブラリは他にもいくつもありますが、最も有名なのはprototype.jsライブラリでしょう。prototype.jsライブラリはAjaxライブラリとして普及しました。実際にかなりのシェアを占めており関連するライブラリも多数出ています。
prototype.jsライブラリはJavaScript言語の特長の1つである言語拡張性を利用し、便利な機能を標準オブジェクトに追加しています。しかし、prototype.jsの最大の利点であるこの言語を拡張するというのは弊害もあります。既存オブジェクトにメソッドなどが追加されるため、プログラムの組み方によっては思わぬ誤動作を引き起こすことがあるためです。
jQueryの場合、prototype.jsライブラリと異なりJavaScript言語を拡張することはありません。このため、思わぬ誤動作を引く起こす心配がありません(ライブラリ併用時の不具合は別です)。
また、prototype.jsは機能が大量に追加されているため、ライブラリのサイズが大きくなってしまっています。jQueryは48K (jquery-1.2.1.min.js/圧縮したものは28KBほど) と、機能の割には小さいファイルサイズになっています。Dojo ToolKitのようにMB単位のライブラリもありますが、jQueryは軽量で高速なライブラリと言えるでしょう。
jQueryの特長の1つとして「繰り返し記述がない」という点もあげられます。一般的に複数のオブジェクトやページ上のエレメントを操作する場合には必ず繰り返し処理が発生します。for()による繰り返し、prototype.jsライブラリではイテレータを使って繰り返し処理を行ないます。
しかし、jQueryにはそのような繰り返し記述は不要です。この繰り返し記述がないとプログラムが短くなる上に、不具合の発生する確率も減ります。これは実際のjQueryのサンプルを見るか、自分で作成してみるとよく分かります。
また、メソッドを実行した際に返されるデータ形式が「jQueryオブジェクト」になっている点も重要なポイントの1つです。これによりメソッドチェーンとして連続して命令を発行することが可能になっています。そして、メソッドごとどの形式が返されるかを把握しなくてもよいため、非常に把握しやすいと言えます。UNIXのシェルで連続して処理を行なうパイプ処理と似たような事がjQueryでもできるような感じと思っても良いでしょう。
jQueryはMITライセンスなのでライブラリ内に著作権表示および本許諾表示を行なえば良いだけです。普通にダウンロードすると、そのような表記が含まれているので特に何もする必要はありません。ただ、MITライセンスなのでライブラリを使用した際に発生する不具合について作者は責任を負わないことになっています。
[
目次へ]