Ajaxに力を入れ始めたマイクロソフト、今度はJavaScript圧縮ツールを無料公開

2009年10月17日

マイクロソフトのAjaxに関する動きが目立ってきました。以前のエントリで紹介したように、9月にはAjaxによるWebアプリケーションを最適化して起動速度を改善するツール「Doloto」の配布を開始。

10月には、Ajaxのライブラリとして最も人気のあるjQueryのマイクロソフト自身による配布を開始すると同時に、Ajaxライブラリを高速に配布するためコンテンツデリバリネットワーク、「Microsoft Ajax CDN」を立ち上げています。

Announcing Microsoft Ajax Library (Preview 6) and the Microsoft Ajax Minifier - ScottGu's Blog

そして、今度はJavaScriptファイルを、実行内容に影響を与えずに圧縮するツール「Microsoft Ajax Minifier」の公開を開始しました。

現在開発中のMicrosoft Ajax Library Preview 6とともに公開されたこの圧縮ツールは、同社のバイスプレジデントであるScott Guthrie氏によるブログのエントリ「Announcing Microsoft Ajax Library (Preview 6) and the Microsoft Ajax Minifier」によると、既存のよく知られたJavaScriptの圧縮ツールよりも効率的にファイルサイズを小さくすることができるとのことです。

fig jQueryを各種JavaScript圧縮ツールで圧縮した結果の比較。JSMin、Packer、YUI Compressorよりも小さくなる(Scott Guthrie氏のブログから加工して引用)

ノーマルモードと、より強力なハイパークランチモード

Microsoft Ajax Minifierは、無償で公開されており、Visual Studioなどほかのツールは不要。ダウンロードしてWindowsにインストールすれば誰でも使えるツールです。ダウンロードは「ASP.NET - Release: Microsoft Ajax Library Preview 6」のページから行えます。

インストールして起動すると、次のようなコマンドプロンプトが表れます。

fig

コマンド名は「ajaxmin.exe」です。引数として、オリジナルのJavaScriptファイル名と、「-o」オプションに続けて出力ファイル名を指定します。

> ajaxmin inputfile.js -o outputfile.js

Microsoft Ajax Minifierにはノーマルモードとハイパークランチモードの2つのモードがあります。デフォルトはノーマルモードで動作しますが、引数の指定によりハイパークランチモードを選ぶことができます。

ノーマルモードでは、JavaScriptファイル内にある不要なスペース、カッコ、セミコロン、デリミタ、コメント文などを削除することで容量を小さくしていきます。

ハイパークランチモードでは、上記に加えて変数名、関数名を短い文字列へ置き換え、参照されていない変数を削除、呼び出されていない関数の削除など、スクリプト内部を解析した圧縮を行います。

このほか、Microsoft Ajax Minifierには、独自アプリケーションから圧縮機能を利用できるdllや、Visual Studioに組み込める機能なども含まれています。

このエントリーをはてなブックマークに追加
follow us in feedly

タグ : Ajax , JavaScript , Microsoft



≫次の記事
「ネットを継ぐもの」となるか。DARPAがより強力な新ネットの研究開発をロッキードに委託
≪前の記事
来週発売のWindows 7を企業が導入する際の5つのアドバイス。ガートナーから

Loading...

Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。新しいオンラインメディアの可能性を追求しています。
詳しいプロフィール


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



Publickey 最新記事 10本

Publickey Topics 最新記事 10本


PR - Books


fig

fig

fig

fig



blog comments powered by Disqus