Help us understand the problem. What is going on with this article?

nvm, Node.js, package.json, npm, yarn, webpackの違いについて

More than 1 year has passed since last update.

Node.jsを使おうとすると、nvmnpmyarnpackage.jsonなど色々な横文字が出てきて大変だったので、それらについてザックリとまとめてみました。
間違いなどがあった場合はコメントいただけると幸いです。

nvm

nvmとは、Node Version Managerの略で、Node.jsのバージョン管理するパッケージになります。
Node.jsは多くのバージョンがリリースされています。nvmNode.jsを管理することで、Node.jsのバージョン管理が簡単になります。

Node.js

Node.jsとは、サーバーサイドのJavaScriptになります。
詳細は以下の記事を参考にしてみてください。
https://qiita.com/hshimo/items/1ecb7ed1b567aacbe559

npm

npmとは、Node Package Managerの略で、Node.jsで作られたパッケージやライブラリを管理するツールになります。
パッケージマネージャーとはライブラリやパッケージの管理ツールのことです。 パッケージマネージャを使うことで、使いたいライブラリの導入や削除を簡易にしたり、パッケージ同士の依存関係を管理することができます。

package.json

package.jsonは、パッケージの依存関係を記述したjsonファイルになります。
このファイルに、プロジェクト毎に必要なパッケージの名前とバージョンを記述すれば、npmが自動で必要なパッケージをインストールしてくれます。
インストールしたパッケージが依存しているパッケージや、さらにそれが依存しているパッケージも自動でインストールしてくれるので、開発環境ごとにインストールさえるパッケージが違うということが起こりません。

yarn

yarnとはパッケージマネージャーのnpmの上位互換のようなツールです。
yarnを使うとnpmの以下の課題を解決することが可能です。

  • インストールが遅い
  • インストール結果に一貫性がない
  • セキュリティ上の懸念がある

yarnnpmで管理されているパッケージになります。
また、package.jsonに対応しているので、npmpackage.jsonを使っている場合はすぐに移行できるようです。

webpack

webpackは、Webアプリケーションに必要なリソースの依存関係を解決し、CSSやJavaScriptなどのアセットを生成するビルドツールです。
Webアプリケーションのビルドツールは他にも、GruntGulpと呼ばれるものが有名です。GruntGulpなどはここでは説明しないので、興味があれば調べてみてください。
webpacknpmで管理されているパッケージになります。

参考にしたサイト

Node.js を5分で大雑把に理解する
パッケージマネージャのnpmとは
npmとpackage.json
yarn (+ webpack) を使ってみる
webpack で始めるイマドキのフロントエンド開発

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away