jsなんて書いてあるから、JavaScriptエンジンに飲ませるサーバーサイド用のメソッドの塊かと思ったら、
サーバーサイド用のメソッドの塊を飲み込むJavaScriptエンジンのフロントエンドだった。
有体に書けば
# node {サーバーサイト・Javaスクリプト}.js
な雰囲気でWEBサイトに限らずサーバーサイドで勝手にJSを動かすものなのだ。
これでドラ猫(Tomcat)ともJBossともお別れできるのだろうか?
1000ページを超えるPDF作成でServletのタイムアウトに悩む必要がなくなるのだろうか?
※Node.jsを組み込んでPDF作成だけ走らせるのも手だな。(大笑
実は絶賛開発中でバージョンも 最新が v0.10.2 と云う段階。
商用WEBサイトの運用はムリ。
WEBサイドIDE(統合環境)を作ろうとすれば、その土台としては最適だろう。
私はJava(JAVA-SE)が大っ嫌いだが、JavaScriptには寛大だ。
※嫌いな理由はJDKのクラスライブラリが屑箱でしかなかったからだ。
※中でもオーバーライドもできない内輪なテキスト・クラスが強烈だ。
※アノテーションも一寸先の動きも読めないソースが出来上がっただけだった。
※JavaコードをラップするEJBはデバッグ方法を考えてなかった。
※Java-Docは、メモでしかなかった。
と・・・この辺にしておこう。
それくらいJava-SEはツッコミ満載。黒歴史しかない。
これらを封印し、新たな旅立ちをするとすれば、それはJavaScriptに鞍替えするぐらいしか道が残されていないのだ。
しかし、JavaScriptの実行速度はそう速いものでは無かった。
運がいいことにGoogleがChromeに使ってるV8 VMエンジンがあったので、これに乗っかることができたのが、Node.jsである。
実際にはなぜかpythonも実行には必要で心配な種も残っている。
手順はココを見ながら、最新のソースのURLに差し替えた。
# wget http://nodejs.org/dist/v0.10.2/node-v0.10.2.tar.gz
# tar zxvf node-v0.10.2.tar.gz
# cd node-v0.10.2.tar.gz
# ./configure
# make
# make install
これで、/usr/local/lib/node_modules/ にインストされる。
# node -v
v0.10.2
これでいいか。
心配なら、
./configure
の代わりに
./configure –prefix={インスト先パス名}
と設定して、好きなトコロにインストし、
# vi .bashrc
export PATH=$PATH:{インスト先パス名}
を追加して、
# . ./.bash_profile
で環境変数を最新にすればスグに使える。
# node
> console.log(“Hello World”);
Hello World
undefined
>
(^C again to quit)
>
# vi helloworld.js
function hello(name){
console.log("Hello " + name);
}
hello('node.js');
# node helloworld.js
Hello node.js
#
別のページにあったサンプルのserver.jsを動かしてみる。
# node server.js
そしてブラウザから開いてみると、
Hello World
とだけ表示された。
確かに動いたな。
Node.jsが、完成 したらapacheは要らなくなるのかもしれない。
それ以上にOSに入っていると理由で
Old-Versionのkshを嫌々使う必要が無くなる!
これが非常に素晴らしいコトだ!(ココが重要!試験に出ます!
※C++でコンパイルする時は必要だけどね?
loh4jが使えないならlog4jsが使え!とか色々ネタができそうである。(笑
あれ?サーバーサイドでjQueryを混ぜられる?
ServetみたいにDOMに手を焼くことも無くなりそう。
しかし、ブラウザ専用の alert や $.ajax(HTTP通信)は無理だけど、無名関数でイベントっぽい登録をすれば、色々サービスを追加できそうですね。
そうそう 最後に .bashrc を元に戻しておかないとね。
ドコにデバッグ用のバックドアがあるか判りませんからね。(笑