TOPシステム開発> Kawa.net XPで公開されるJavaScriptライブラリの裏側
まるごとJavaScript&Ajax!
JSライブラリ・ラボ - これで君もライブラリ開発者だ!

第6回:自作ライブラリの公開とJavaScriptライブラリの今後
著者:川崎 有亮   2007/4/11
前のページ  1  2
Kawa.net XPで公開されるJavaScriptライブラリの裏側

   筆者も自身のウェブサイトKawa.net XPでJavaScriptライブラリを公開しています。ここではその一部をご紹介します。
JKL.Calendarライブラリ

   日付入力欄をマウスでクリックすると、ポップアップで図8のようなカレンダーが表示するのがJKL.Calendarライブラリです。カレンダー上の日付をクリックするだけで入力が完了します。もちろん、カレンダーを利用せずに日付を手入力するも可能です。

JKL.Calendarライブラリ利用例
図8:JKL.Calendarライブラリ利用例

   2005年4月の初回リリースで、ちょうど「Ajax」という言葉が同年2月に誕生した頃に開発を始めたライブラリです。プロパティでなくメソッドを多用するなど、今から見るとあまりJavaScriptらしくない設計で、コードの内部構造もあまり洗練されていません。

ポップアップする日付選択カレンダー
http://www.kawa.net/works/js/jkl/calender.html


JKL.ParseXMLライブラリ

   Ajaxアプリケーションを構築していると、クロスブラウザーの対応やXMLデータを展開する際の面倒なDOM操作が気になります。クロスブラウザー対応のXMLHttpRequest(XHR)ラッパー機能と、XMLデータを扱いやすいJavaScriptオブジェクト形式へ展開する機能を搭載したJKL.ParseXMLライブラリを、2005年5月にリリースしました。

   たった数行のJavaScriptコードを書くだけで、XMLデータを利用したAjaxアプリケーションを手軽に構築できます。JSON形式やCSV形式のデータの受信にも対応しています。

   XHR通信を省いて、反対にXMLデータの生成機能を追加したXML.ObjTreeライブラリもあります。しかし、手軽に使えるJKL.ParseXMLライブラリの方が多く利用されているようです。

Ajax通信+XMLデータ一括展開
http://www.kawa.net/works/js/jkl/parsexml.html


AjaxZip 2.0ライブラリ

Ajaxを利用した住所自動入力フォーム
http://www.kawa.net/works/ajax/ajaxzip2/ajaxzip2.html

   個人情報入力フォームなどで郵便番号を入力してからボタンを押すと、住所を自動入力できるページがあります。それを改良して、ボタン不要の住所自動入力処理を実現したのが、AjaxZipライブラリです。

   図9のように変換ボタンやその説明文が省けるため、シンプルで初心者の方にも分かりやすくなります。2006年9月のバージョンアップでは、あらかじめ郵便番号辞書をJSON形式ファイルとしておくことで、郵便番号から住所への変換処理CGIも不要にしました。

AjaxZip 2.0ライブラリ利用例
図9:AjaxZip 2.0ライブラリ利用例

   最近は、セキュリティポリシーにより企業サーバーなどでCGIを利用できない環境が増えています。そのようなことから、JavaScriptのみで処理できるライブラリが求められるようになりました。

JavaScriptライブラリの今後

   最近のJavaScriptの興隆は、Ajaxの登場だけでなくそれをサポートするJavaScriptライブラリの充実に依るところが大きいと言えるでしょう。

   オリジナルのJavaScriptライブラリを作成した場合も、自分のブログやWebサイトで(できればJSANでも)公開して、世界中のより多くのプログラマにもそのライブラリを利用してもらいたいところです。

   そうしたコード再利用の循環がプログラマ間のアイディア共有を促し、また切磋琢磨を続けることでより高度な機能も利用しやすくなり、そうしたコード再利用の循環がプログラマ間のアイディア共有を促し、また切磋琢磨を続けることでより高度な機能も利用しやすくなり、さらにはJavaScriptを利用した魅力的なサイトが今後さらに登場してくることを、願ってやみません。

前のページ  1  2

川崎 有亮
著者プロフィール
川崎 有亮
1977年東京生まれ。AjaxなどWeb技術のアーキテクト。株式会社かっぺを経て、現在は株式会社リクルート事業開発室に所属。技術評論社「Ajax/実装のための基礎テクニック」(共著)など書籍・雑誌記事の執筆も多数。

Kawa.net xp:http://www.kawa.net/


INDEX
第6回:自作ライブラリの公開とJavaScriptライブラリの今後
  自作ライブラリをJSANで公開!
Kawa.net XPで公開されるJavaScriptライブラリの裏側