Node.jsについて理解が少し進んだ
2021年06月12日
今や様々なところで使われているNode.js。
そもそもこれが何なのか、今ひとつ理解できていない(使ってはいるものの、イメージが沸かない)状態だったのですが、ようやく理解が進みました。
それはどういうことかといいますと、「特定のディレクトリ以下に閉じ込めたJavascript実行環境」です。
どういうことかと、Javascriptのライブラリなどを一式準備するとき、必要となるライブラリなどが一式ありますが、それが、サーバ全体で共有するようなイメージだと、プロジェクトによって、必要なライブラリやバージョンが異なったりするため、競合が起こり、管理が大変になります。
それが、特定のディレクトリ以下に一式をすべてまとめられて単位で区切られていれば、プロジェクトごとにバージョンが異なっていても競合を起こすことはありません。
それを管理するのが「npm(node package manager)」です。
phpでいうcomposerみたいなかんじですね。
linuxの場合、yumでパッケージ管理をしていると、サーバ全体のライブラリが更新されたりしますが、npmの場合、特定のディレクトリ(npmを実行した環境)以下に全てまとめられ、それは主にプロジェクトごとに作成されます。
このことが当たり前っちゃ当たり前ですが、npmを実行してもバックグラウンドで何が実行されているかが分かりにくいため、ようやく理解することができました…。