node.js?npm?Javascriptとどんな関係が?

npmnode.jsJavascriptの関係性がよく分からない。

node.js

  • サーバーサイド用Javascript の言語処理系のこと。
    • サーバーサイド用Javascriptってなんやねん。
      • ブラウザで動くJavascript(いつもjsファイルに書いているやつ)と似てるようで実は違うJavascript
        • モジュールの読み込みができたりするんです。
      • nodeコマンドで実行でき、Browserfyを使ってブラウザで動くJavascriptに変換できる
    • 言語処理系ってそもそもなんやねん
      • プログラミング言語で記述されたプログラムをPCで実行するためのソフトウェア。
        .pyファイルはpythonの言語処理系、.goファイルはgolangの言語処理系で実行するよね。
    • nodeコマンドでREPL(Read Eval Print Loop: 対話的実行環境)が出て来るよ(pythonコマンドみたいな感じ)
$ node
> var name = 'nekootoko3';
undefined
> name
'nekootoko3'
> console.log(name);
nekootoko3
undefined
> .exit
$
  • 引数に.jsファイルを持って来ると。

nekootoko.js

var name = 'nekootoko3';
console.log('Soy ' + name + '!');
$ node nekootoko.js
Soy nakootoko3!

npm

  • パッケージ管理ツール
    • pythonでいうところのpip、rubyでいうところのgem
    • 例のnode.js(サーバーサイドJS)をブラウザで動くjsに変換するツールをインストールするぞ!
# パッケージをグローバルにインストール
$ npm install -g  browserify
/usr/local/bin/browserify -> /usr/local/lib/node_modules/browserify/bin/cmd.js
+ browserify@16.1.0
added 140 packages in 7.915s

おわりに

フロントやるぞお

参考