npmは、Node.js のデフォルトのパッケージ マネージャーです。 Facebook は長い間、 Yarnと呼ばれる代替パッケージ管理ソリューションを開発してきました。 Yarn はデフォルトのソリューションとして GitHub の Readme から徐々に消えつつあるようで、公式サイトの統計によると、パッケージのインストールの一部のみが Yarn で実行されています。それでも、枠にとらわれずに検討する価値はあります。
Yarnは既存のpackage.jsonファイルと完全に互換性があるため、既存のプロジェクトで両方のソリューションを簡単に使用できます。2つのソリューションのコマンドはわずかに異なるだけです。以下に、最も重要なコマンドの比較を示します。:
| 説明 | npm | 糸 |
| 初期化 | npm init | 糸の初期化 |
| 更新 | npm install -g npm | 糸の自己更新 |
| パッケージをインストールする | npmインストール -保存[名前] | 糸追加[名前] |
| パッケージをインストールする | npmインストール --save-dev [名前] | 糸追加 --dev [名前] |
| パッケージをグローバルにインストールする | npm install -g [名前] | ヤーングローバル追加[名前] |
| すべてのパッケージをインストールします | npmインストール | ヤーンインストール |
| すべてのパッケージを更新します | npmアップデート | 糸のアップグレード |
| パッケージをアンインストールします | npm remove [名前] | 糸取り[名前] |
Yarn は、npm の問題点のいくつかを解決することを目的として始まりました。最も明白な違いはパフォーマンスの向上です。増分インストール、マルチスレッド、最新のキラー機能Plug'n'Play (PNP) により、パフォーマンスが劇的に向上します。 Plug'n'Play は、ファイル数が天文学的な高さまで増加する可能性がある、プロジェクトベースの node_modules フォルダーの考えを拒否します。詳細については、 Plug'n'Play の公式ホワイト ペーパーを参照してください。 eslint をnpm で 1 回インストールし、その後、速度の違いを明確にするために (6 倍!)、それぞれのケースでキャッシュをウォームアップして Yarn でインストールします。:

