JavaScriptが多用されるようになり、prototype.jsをはじめとする汎用的なライブラリも数多く登場している。そうなると心配になるのが、JavaScriptファイルの大きさだ。

prototype.jsは標準で72KBとかなり大きい。また、単体での利用のほかに複数のライブラリを組み合わせる事も多いので、接続数が多くなってしまう。その解決策となりえるのがこのソフトウェアだ。

今回紹介するオープンソース・ソフトウェアはjscsscomp、JavaScriptとCSSファイルの圧縮化ソフトウェアだ。

jscsscompはPHPで作られた圧縮化ソフトウェアで、コメント等の(実行上の)不要な情報の排除や、GZIPがサポートされている場合の圧縮化処理、キャッシュを作成して変更がない場合に304を返すといった高速化のための幾つかの手法が凝縮されている。

さらに便利なのがスクリプトをひとつにまとめてくれる機能で、jscsscompに対してJavaScriptファイルをカンマ区切りで複数渡すと、連結した状態で表示してくれる。ひとつのファイルで全て対応できるので、接続も少なくて済む。

実際の圧縮効果としては、GZIPを使わない場合、元のprototype.jsが72KBなのに対し、処理後は56KB程度になっている。また、prototype.jsとscriptaculous.jsを一緒に処理した場合は元ファイルが76KBなのに対し、処理後は56KBとファイルの内容によって随分圧縮率が異なるようだ(scriptaculous.jsの分が吸収されてしまったかのようだ)。

コメントを省いたり、難読化する事でサイズの軽減は可能だ。だが、それを人力でやろうとしたり、何らかの処理を随時やるとなると面倒に感じてしまうだろう。jscsscompを使えば、それらが自動で処理できるようになる。

jscsscomp - Google Code
 http://code.google.com/p/jscsscomp/

JavaScriptとCSSを圧縮するPHPスクリプト「jscsscomp」:phpspot開発日誌
 http://phpspot.org/blog/archives/2007/04/javascriptcssph.html