v0.0 20011118
SQLServerのDTS(データ変換サービス)の変換スクリプトを書くこともできるし、Script Controlを使えばVB/VCからも使えます。
IE5以降ならcscript.exe/wscript.exeがOSに入っているので、これを使ってファイル処理、文字列処理などをJavaScriptの文法で行えます。すばらしいですな。
少なくとも、ActivePerlやRubyを入れるよりはお手軽でしょう。(ASPで使うには多少設定が必要です)
セキュリティホールが多すぎることもあって、IISであるというのが非常に難儀です。この一点をのぞけば、軽さと機能は魅力的なのですが。最近はいまいち分が悪いです。
microsoftのニュースグループ(microsoft.public.scripting.jscript)を見ても、JSとVBSのトラフィックの比率は1:3。しかもJS側ではクライアントサイドの話題も多いので、サーバサイド一辺倒とはいきません。
Netscape Enterprise ServerがサーバサイドJavaScriptをサポートしていますが、これまた大きなムーブメントをなしているとは言いがたいところです。
情報源もきわめて限られている中であえてJScriptを使う理由はあるでしょうか。
そもそも使用言語は、ユーザ要件をのぞけばプログラマが決めてしまって良いことです。JavaやCの経験があって、オブジェクト指向プログラミングに慣れている人なら非常に手になじむ言語になるはずです。(そういう人がASPに手を染めるかどうかは別ですが)
逆にAccessなどでVBAに慣れている人ならVBScriptが無難でしょう。
VBScriptとの比較は次項で述べます。
オブジェクトには自由にプロパティやメソッドを追加できます。配列もオブジェクトなので、常に動的に配列要素を追加・削除できます。Redimは必要ありません。
限界性能はVBScriptの方が上といえるかも知れません。しかし、もともとASPの性能はwebアプリケーション用プラットフォームの中でも速い方に属します。正しいプログラミングのもとでは、VBScript/JScriptの性能差が問題になることはあまりないでしょう。
#JScriptの文法には、性能差を補ってあまりあるメリットがあると思ってますが。
IISにおいて極限まで性能を求めるなら、C++とISAPIで作るしかありません。
一般論ですが、プラットフォームの仕掛けを性能順にならべると、こんな感じになります。
1:webサーバのプロセス内で動作するコンパイル済みコード(ISAPI, NSAPI, Apacheモジュール)
2:webサーバのプロセス内で解釈されるスクリプト(ASP, mod_php, mod_perl他)
3:cgiとして動作するコンパイル済みプログラム(実行形式ファイル)
4:cgiとして動作するスクリプト(perl, ruby, ...)
servletは1と2の間あたりになるでしょうか。
ASP対応言語の性能差は、以下の通りと言われます。
VBScript > JScript > PerlScript
SQLServer 7.0 Enterprise Managerに記述があります。RubyScriptは試してません。
ベンチマークを後日提供します。
Visual Studio.Netの日本語ベータ2では、まだJScript.NetのIDEサポートがありません。正式版では対応するらしいですが、残念な話です。
国内ではJScript.Netなんて話題にも上りませんね……