「好み」や「慣れ」「制約」の問題は忘れて読んで欲しい。それは個々人の問題だから。
時代はSPA
スマホの普及で、モバイルネットワークなのに画面遷移ごとにページのリロードなんてユーザはじれったくて待ってくれない。
だから、SPA(Single Page Application)という手法が出るのは必然だ。
これは、画面遷移に応じて必要なデータを読み込み、必要な部分だけを再描画する手法だ。
言語のスイッチングコストは予想以上に高い
昔と比べて、ウェブサービスの開発コストはほんとうに下がった。
だから、一人でサービスを作る人もこれから格段に増えるに違いない。
一人でSPAを組む時にしんどいのが、言語のスイッチングコストだ。
Railsで組んでいるなら、RubyとJavaScriptの2つを並行して書かなければならない。
言語はそれぞれ独特の作法があり、いいコードを書くにはそれなりの鍛錬が必要だ。
しかしいかに熟練していたとしても、常に複数言語のテクニックやライブラリにキャッチアップするのは大変だ。
node.jsは”お一人様向け”
node.jsは、サーバサイドで動くJavaScript環境だ。
つまり、スイッチングコストが圧倒的に低い。
もちろん、DOM操作やファイル操作など、クライアントとサーバサイドでは相互で通用しないテクニックもある。
でもそれは言語の問題ではなく、アーキテクチャの問題だ。
一人で効率よく開発したいなら、node.jsをお薦めする。
フレームワークはどれがいい?
そんなのは今どきどれもよく出来ているから、「住めば都」だ。