75
63

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

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

Last updated at Posted at 2018-01-03

株式会社TECH LUCKという会社で代表兼エンジニアをしている齊藤です。

DXプロジェクト、開発プロジェクト、Rails開発などでお困りごとがありましたら弊社HPからご相談をいただけますと幸いです。
以下のような問題に対応することが可能です。

  • プロジェクトでRailsエンジニアが足りなくて困っている
  • Railsのバージョンアップをしたいがノウハウ・リソースが足りなくて困っている
  • オフショア開発をしているが、要件の齟齬やコード品質が悪いので改善したい

また、Railsエンジニアも募集しておりますので、興味がありましたら弊社HPからご連絡いただけますと幸いです。

前提

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

Node.js

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

nvm

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

nodebrew

nodebrewもNode.jsのバージョン管理システムになります。nvmでもnodebrewのどちらでもNode.jsのバージョン管理をすることができるということです。
nvmと違って、プラットフォームに依存せず簡単にバージョンが切り替えられるらしいです。(あんまりよく知らない)

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で管理されているパッケージになります。

参考にしたサイト

75
63
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
75
63

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?