node.jsの勉強を始めた
node.jsって
node.jsはサーバー側アプリケーションを作るためのプラットフォームです。PHPやRubyなどと違って、node.jsは言語やフレームワークではなく、JavaScriptを利用したプラットフォームです。
PHPなどを使っている方には、最初わけわからないかもしれないが(私もそうでした)、 とりあえず「JavaScriptでアプリを作る環境」と考えればいいと思います。
なぜnode.jsを勉強するのか?
node.js一番魅力的なところと言えば、スケーラビリティでしょう。MongoDBなどのNoSQLデータベースと組み合わせて使うと、かなりスケーラビリティが高いです。大規模のアプリにも本領を発揮します。
node.jsをインストール
node.jsのインストール方法は公式サイトで詳しく説明されています。URL: http://nodejs.org/download/
Mac OS
Macなら、公式サイトからインストーラーを利用するか、homebrewなどのPackage Managerを使ってインストールできます。
Windows
Windowsのインストーラーも公式サイトで提供されています。ダウンロードしてインストールすればオッケです。
他のOS
こちらを参考してください: https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager
node.jsのコアモジュール(API)
node.jsのスタンダードライブラリー(コアモジュール)はすごい軽いです。webアプリの開発においてよく使うのは下記の五つです。
name | doc |
---|---|
http |
http://nodejs.org/api/http.html |
util |
http://nodejs.org/api/util.html |
querystring |
http://nodejs.org/api/querystring.html |
url |
http://nodejs.org/api/url.html |
fs |
http://nodejs.org/api/fs.html |
使用イメージをすこし説明しましょう:
http
名前通りですが、http関連の便利なメソードがいっぱい入っています。
httpのPOSTリクエストしてみる
httpのGETリクエスト
util
util
は便利なhelperが入ってます。
node.jsのprintf
querystring
querystring
はurlのパラメタを作成する時に非常に便利なツールです。
url
url
はurlを解析によく使うモジュールです。
fs
fs
はファイルの読み込みや書き込みに使うモジュールです。
####ファイルを読み込む
ファイルへの書き込み
ファイルをストリームとして処理する
Hello World
node.jsで「Hello World」サーバーを作ってみましょう。
JSに詳しい方は、多分node.jsの使いやすさもう体感してると思います。JSは初めての方は、繰り返してるfunction
で混乱しちゃうかもしれないが、これはJSの特徴でもある、コールバックを大量使うことです。(慣れるにはコードいっぱいみるか、書くしかないですね〜)
まとめ
node.jsはJavaScriptに馴染んでいるフロントエンドデザイナーにとって、非常に便利なプラットフォームだと思います。
従来のWebアプリ開発では、JavaScriptは主にフロントエンド言語(ブラウザ側)と考えられますが、node.jsがJavaScriptをバックエンドに持ち込んで、フロントエンドとバックエンドが同じ言語での開発が可能になります。開発効率の向上に期待されるでしょう。
そして、JavaScriptはリアルタイムwebアプリの作成には得意なので、ゲーム開発などには最適だと思います。