Javascript

2006年04月16日 はてなブックマーク livedoorクリップ

Yahoo! UI Library (圧縮版再配布)

※バージョンアップ 0.9.0→0.10.0に伴い、各々のライブラリに対して"-mini"(animation.js→animation-mini.js)という圧縮ファイルが同梱されるようになりました。従って、この記事の有効性はあまりありません。

ちまたを騒がせている Yahoo! User Interface Library(Yahoo! UI ライブラリ)ですが、結構ファイル数が多い上にコメント入りすぎでファイルサイズがかなりでかいです(ビルド済みファイルで300KB以上!)。そのまま使うには実用度から見て厳しそうです。

そこで一部ファイル結合し、更に圧縮したファイルを再配布します(容量約70%カット!)。ソースを読む際やリファレンス、サンプルを見る場合はオリジナルを、実際に使用する場合はこの圧縮を利用する等使い分けてください。
※BSDライセンスにより再配布は認められていますのでご安心を。


[ダウンロード]

1.yui-util.js・・・YAHOO.utilのセット(158KB->43KB = 約73%カット
 (animation.js,connection.js,dom,js,dragdrop.jsevent.js)
2.yui-calendar.js・・・calendar.jsの圧縮(94KB->37KB = 約61%カット
3.yui-slider.js・・・slider.jsの圧縮(19KB->8KB = 約58%カット
4.yui-treeview.js・・・treeview.jsの圧縮(39KB->14KB = 約64%カット
5.yui.js・・・YAHOO.jsの圧縮(1.5KB->0.3KB = 約80%カット
6.yui-all.js・・・1~5の全てを梱包(311KB->103KB = 約67%カット


[雑談]

最近はjavascriptのライブラリにはまってます。prototype.jsやYahoo! UI Library等かなり面白いですね。
prototype.jsの場合は、結構シンプルな構成なので気になりませんがYahoo!UI ライブラリの方はかなり複雑なので色々なファイルを定義しなければならず結構めんどくさいです。オーバーヘッドを起こさない為にもファイルを扱いやすいようにひとまとめにしてみました(ただそれだけです)。

また自分でテストした中では、prototype.jsとYahoo! UI Libraryの混在も可能です(オブジェクト汚染なんたらかんたらも過去のお話ですし)。Ajax部分についてはどちらも穴(+バグ)がありどちらが良いとは言えません。ここらへんの話は後日・・・(別サイトに載せるかも?)。


[追記 2006/04/17]

一箇所修正。animation.jsのcorrectFrameというプライベート変数が関数の一番最後に定義されており
(変則的!)正しく圧縮が行われていなかった為、手作業で修正しました(雪さんThanx)。他にも同様の例がないかgrepしましたが、とりあえず見つかりませんでした。ほっ

他にもバグを発見次第報告してもらえると助かります。


投稿者 shiz : 2006年04月16日 22:08

トラックバック

このエントリーのトラックバックURL:
http://mt.amonya.com/mt-tb.cgi/39

※トラックバックのリンク確認後に掲載させて頂きます。
(当エントリー又は当サイトへのリンクがない場合は掲載しません)

コメント
コメントしてください




保存しますか?