Closed3

JavaScriptのモジュールについてまとめてく: パッケージマネージャー編

ebi_yuebi_yu

パッケージマネージャーとは

パッケージマネジャーは、ソフトウェアのパッケージ(ライブラリやモジュールなど)のインストール、アップデート、設定、削除などを管理するツール。

JavaScriptプロジェクトでは、これらのパッケージを効率的に管理し、開発の生産性を高めるためにパッケージマネジャーが使用される。

モジュールとは

モジュールは、関連するコードがまとめられたもの。
一つのモジュールは特定の機能や構成要素を担い、再利用可能なコードの塊として機能する。

ライブラリとは

特定の機能やタスクを実行するために予め書かれたコードの集まり。
ライブラリは一つ以上のモジュールから構成されることが多く、開発者が特定の機能を簡単に実装できるように再利用可能なコードを提供する。

パッケージとは

パッケージは、再配布や再利用が可能な形でまとめられた一つ以上のライブラリ(またはモジュール)。
パッケージは通常、ライブラリやモジュールに加えて、それらをインストールしたり管理したりするためのメタデータやドキュメントを含む。

https://snownotes.org/what-is-library-and-package-ja/

ebi_yuebi_yu

JavaScriptにおけるパッケージマネージャー

npm

npm(Node Package Manager)はNode.jsデフォルトのパッケージマネージャー。
npm installでpackage.jsonに書かれたパッケージをinstallする

package.jsonではパッケージのバージョンを範囲指定できるため、実際にダウンロードされたパッケージはpackage-lock.jsonで管理される。

https://docs.npmjs.com/about-npm

yarn

yarnはFacebookによって開発された別のJavaScriptパッケージマネジャー。
npmと同様の機能を提供しながら、パフォーマンスとセキュリティの面でいくつかの改善が加えられている。
yarn installでpackage.jsonに書かれたパッケージをinstallする

実際にダウンロードされたパッケージはyarn.lockで管理される。

https://yarnpkg.com/

pnpm

npmの代替として開発されたJavaScriptパッケージマネジャー。
速度と効率を上げるために様々な工夫がされている。
pnpm installでpackage.jsonに書かれたパッケージをinstallする

実際にダウンロードされたパッケージは**.pnpm-lock.yaml**で管理される。

  • 効率的なストレージ
    pnpmはハードリンクを使用してパッケージを格納するため、複数のプロジェクトで同じパッケージを使用している場合でもディスクスペースを節約できる。
  • 高速な操作
    pnpmはnpmやyarnに比べてインストール速度が速い。これは、重複するパッケージを再ダウンロードせずに共有するため。
  • 厳格な依存関係
    pnpmはパッケージの依存関係をより厳格に管理し、予期しない副作用を防ぐ。
  • モノリポ をサポート
    pnpm はリポジトリ内マルチパッケージをサポートしている

https://pnpm.io/ja/

このスクラップは2023/12/29にクローズされました