JavaScriptは昔から変態(褒め言葉で)なコードを書く人が多かったけど、
サーバサイドJavaScriptとしてnodeが登場してからは、さらに変態なソースを書く人が
多くなった気がする。
node.jsって何?
サーバサイドで動作させる。イベント駆動型のJavaScript環境。
外部のライブラリ管理のnpmとか、node上で動作するフレームワークライブラリなんかもある。
基本、JavaScriptなので、JavaScriptが動作する環境であればだいたい動く。
どのフレームワークを使う?
Webアプリケーションを考えるとMVCモデルに近いMVモデルが扱えるBackbone.jsがオススメ。
Webアプリケーション開発者であれば、MVCモデルは一度は聞いたことがあるだろうし、MVCモデルの呪縛がからは逃れ慣れないのがWebアプリケーション。
イベント駆動型なので、MVCというより、Modelを作成して、そのModelに対して、イベントのトリガーをセットし、Viewを紐付けると言った感じ。
(厳密には違うかもw)
Modelを組み合わせて、動作を作って行くという考え方について行けるかどうか。。。
また、SinglePageApplication(SPA)だとMeteor(メテオ)なんかあるので、
こちらも盛り上がっているっぽい。
JavaScriptの人達は、流れが速いので多分どれがデファクトになるかではなくて、
どれが生き残るか?なんだろうねぇ。
どんな感じで?
どれも、ライブラリの組み合わせ次第で、結構ハードなことから単純なことまで
実装可能な感じ。
イベント駆動型という考え方は、無駄が無くて良いと思う。
しかし、所詮JavaScriptなので、デバッグ時に明確なエラーが確実に出るわけでは無いので、
JavaScriptのデバッグ地獄は覚悟した方が良いかもw
node.jsって最初のころは、WebSockを使ったWebサーバアプリのサンプル記事が多かったけど、
最近ではようやくWebアプリケーション開発のサンプル記事が多くなったので、そろそろ
仕事で採用しても良い頃かも。
しかし、従来のサーバサイドの言語で開発出来る方としては、わざわざJavaScriptでやる必要性も
なかなか見いだせないのが正直なところw