Posted at

世界一雑なNode.jsの説明


Node.jsとは

Node.jsは、npmパッケージの実行環境です。

とりあえず、

これだけ覚えておきましょう1


以下、世界一雑な補足


「実行環境」って?

次の表を見れば、「実行環境」がどんなものか分かると思います。

対象(実行したいもの)
実行環境

MP3ファイル
音楽再生アプリケーション2

Javaアプリケーション
Java実行環境3

npmパッケージ
Node.js


「npmパッケージ」って?

Node Package Manager4で管理されているソフトウェアが、「npmパッケージ」です5

「npmパッケージ」は、npm install 〇〇コマンドで導入することができます。

以下に著名な「npmパッケージ」を挙げておきます。

おそらく、多くの人がNode.jsを学ぶきっかけとなったものだと思います。


この記事を書いた動機

初心者がNode.jsを学び始めると、まず以下のような文言に出会うことでしょう。


  • Google Chromeで使われているJavaScriptエンジン(V8)

  • サーバサイドでプログラムを実行

  • スケーラブルなネットワークアプリケーションを構築できる

  • ノンブロッキングI/O処理

  • イベントドリブン、シングルスレッド

しかし、ただ必要に駆られてNode.jsを使うことになった初心者にとって、上記は余り必要な情報ではありません6。また、この分野は粗悪な記事もネット上に散見され、これらのキーワードを散りばめただけのイイカゲンな内容となっているものも多々あります。

そこで、とりあえず既存のnpmパッケージを使うだけならば、そんなにややこしいことを気にしなくても良いということを知って貰い、イイカゲンな記事に翻弄される人が一人でも減ることを願って、この記事を作成しました。





  1. 実際にはJavaScriptの実行環境ですが、実質的にNode.js向けに作成されたソフトウェアはほぼnpmパッケージとなります 



  2. iTunesやWindows Media Playerなど 



  3. Java Runtime Environment 



  4. npm 



  5. ソフトウェア(ツールやライブラリ、モジュール等)に管理用のメタ情報(package.js)を付与すると、Node Package Managerで管理できるようになります 



  6. 特に上記のようなツール系(コマンドとして使用する)パッケージの場合、これらの情報は不要なノイズでしかありません。中でも「サーバサイドでプログラムを実行」は顕著に混乱を招きます。