そろそろ Node.js が成熟する頃ですね
Node.js が、もうすぐ成熟する時を迎えています。
ちなみにバージョン 1.0 はまだ出ていません。
2014年1月時点で 0.11.11 までですね。
JavaScript のコールバック地獄
JavaScript のコールバック地獄から
やっと開放されることになりそう。
コールバック地獄とは↓こういうのネ。
get("a.txt", function(a) {
get("b.txt", function(b) {
get("c.txt", function(c) {
console.log(a + b + c);
});
});
});
Node.js の co を使うと↓こんな感じになるよ。
co(function*() {
var a = yield get("a.txt");
var b = yield get("b.txt");
var c = yield get("c.txt");
console.log(a + b + c);
})();
ちょっと良くない?
JavaScript の非同期プログラミングという
一番醜い所を綺麗に見せてくれる。
これならやっと人に勧められそうな気がする。
※記事を書いた → [JavaScript] 非同期処理のコールバック地獄から抜け出す方法 - Qiita
ちょっと過激目な予告
それで個人的な予告:
Express は段階的に無くなるのではないか。
もしかすると、終焉を迎えることになるのではないか。
言い過ぎか...
Koa に移行しよう
co ベースの新しい Koa に移行しましょう。
まだバージョンは 0.3.0 だけどね。
まだ早過ぎるかなぁ。
ES6 yield (generators)
やっぱり ES6 の yield (generators) が
今後のキーテクノロジになると思うよ。
見た目は他の言語の generators だし
C# の async/await っぽいけど
スレッドを使用しない所がミソだよ。
ブロックしないんだよ。
JavaScript はシングルスレッドなんだよ。
言わば Windows 3.1 だよ。(笑
VMS の $QIO + AST だよ。(笑
Node.js は省エネで超エコ
Node.js は省エネで超エコなシステムが構築できるよ。
省メモリ。省リソース。
省スレッド。省コンテキストスイッチング。
C10K も OK だよ。
今時の SNS やチャットが
静かな常時接続で実現できる。
こういうところだけが、
私が Node.js 推しである
唯一の理由なんです。
参考