node.js流行ってますね。むしろもう一般常識?
いまさらですがちょっといじってみます。
node.jsって?
自分的にはザックリ、
JavaScriptインタプリタ + 便利ライブラリ
と理解しときます。
スゲー進化したBASICみたいなもんですな。
Install
Windows7 64bitです。
http://nodejs.org/のINSTALLをクリック。
node-v0.10.33-x64.msiがダウンロードされましたんで、実行。
デフォルトのまま次>次…
インストールが終了するとスタートメニューにnode.jsが追加されます。
上から
- Node.js command prompt
- node.js用に環境設定されたコマンドプロンプト。サーバ起動とかnpmとか、作業するときはこれか?
- Node.js documentation
- ドキュメントサイトへのリンク
- Node.js website
- node.js本家サイトへのリンク
- Node.js
- Node.js(node.exe)そのもの起動。対話型のインターフェース。1+1とか実行できます。
Tutorial
ど素人なのでNodeSchoolのチュートリアルをやってみます。
“Node.js command prompt”を開いて、
|
|
なにやらメニューが表示されます。
“INTRODUCTION”を選んでみます。
なにやら、英語の文書が表示されます…
なんというか、、、単なるドキュメントじゃだめなんでしょうか?
とりあえず言われたとおりにやってみます。
作業用フォルダは D:\nodejs にしました。
|
|
|
|
|
|
うまくいくと、お褒めの言葉と解説が表示されるようです。
、、、単なるドキュメントじゃだめなんでしょうか?
再度 javascripting を実行すると、先のメニュー画面に戻り、次のステップに進みます。
INTRODUCTIONに[COMPLETED]がついてますね。
次は”VARIABLES”…と順に進めていきます。
進めると[COMPLETED]が増えますんで、かすかな達成感があります。所要時間は1時間ぐらいでしょうか。
javascripting はjavascriptのチュートリアルなのでやらなくていいかも。
次にlearnyounode行ってみます。
|
|
“MY FIRST I/O!”あたりからnode.jsっぽい内容になってきます。
Exercise別メモ
HTTP CLIENT
けっこう深い継承
callbackに渡されてくるresponseオブジェクトのon()とかsetEncodingとか、ドキュメントにないっすけど。。。
よくよく読んでみると、responseはhttp.ServerResponsではなくhttp.IncomingMessageというもの(クラスではないらしい。匿名クラス?)で、こいつが Readable Streamってインターフェースを実装してますよとの事。
Readable Streamの説明にはsetEncodingとか”data”イベントとかの説明がありますね。
んじゃon()は?
Readable StreamはStreamってインターフェースの実装らしく、このStreamがさらにEventEmitterのインスタンスだよとの事。
EventEmitterにon()の定義が在りました。
JavaScriptだからか、実装とかインスタンスとかって言葉がごちゃまぜに出てきますな。きちんと理解しないとハマるポイントになりそう。。。だけど今はスルー。
HTTP COLLECT
チュートリアルで3rdパーティーライブラリつかうんか。bl使います。
|
|
HTTP UPPERCASERER
こちらでもパッケージ追加。
|
|
という事で、javascriptingとlearnyounodeやったわけですが、
node.js自体はJavaScriptなわけだから、激しく難しいわけではないですな。
英語がよくわかんないけど。
次はなんかちっさいツール作ってみるかも。