#目次
1.はじめに
2.npm yarn pnpm
3.State of js 2022
4.結論
はじめに
初めまして!社会人一年目の新米エンジニアです!
今回は個人開発するための環境構築に使用するNode.jsのパッケージ管理ツールについて調べてみたので、備忘録もかねて記事にしたいと思います。
npm yarn pnpm
Node.jsのパッケージマネージャーといえばこのまず3つが思い浮かぶと思います。
一応これら以外にも「ent、ied、Volo、Bower、Component、JSPM、npm5」などもありますが、現在ではあまり使用されていないので今回は深く調べません。
npm
やはりNode.jに標準で備わっているツールなので、上記の3つの中でも使用率はトップに位置します。
元々はパフォーマンスやセキュリティ面で問題が多かったようですが、現在では他のツールに劣らない性能となっております。
yarn
yarnの次に使用されているパッケージマネージャーです。
yarn v2やzero-installなどさまざまな機能がある印象です(正直具体的な機能はよくわかっていません笑)。
pnpm
pnpmは上記の2つほど使用率は高くないがインストールが非常に速くパフォーマンスも高いです。
本来はパッケージをインストールするたびに独立したnode_moduleを作成するのですが、pnpmは、パッケージ間で共有できるシンボリックリンクを使用することにより、ディスクスペースの使用量を削減して高速なインストールを実現しています。
state of js 2022
こちらのサイトはライブラリの傾向などを多くのIT技術者にアンケートをとって結果をまとめてくれるサイトになります。
こちらを見るとやはりnpmとyarnが優勢ということになりますが、pnpmとの差は大きくなくnpmとyarnがやや否定的な意見が増えている中pnpmは肯定的な意見が増えてきているので、おそらくどれを選択しても間違いではないと思いました。
結論
仕事で使用しているということもあり、自分はpnpmを使用したいと思います。npmのメリットはドキュメントの豊富さやインストールが不要など、複数人での開発で生かされるものだと思います。
一方でyarnやpnpmはインストール、アンインストールの高速化やnode_moduleの軽量化など個人開発で生かされる機能が備わっているように感じました。
よって仕事で使用していて、今勢いがあるpnpmで開発を進めたいと思います!
参考記事