【やーん】
Yarn とは?
💡 npmを「もっと速く、もっと安全に」を目指して生まれたパッケージ管理ツール
📌 このページのポイント
Yarnってnpmがあるのになんでわざわざ作られたの?
2016年頃のnpmは遅くて不安定だったんだ。Facebook、Google、Tiltの開発者が「もっと速くて確実なパッケージマネージャーが欲しい」と思って作ったのがYarnだよ。npmの弱点を補うために生まれた存在なんだ。
具体的にnpmより何が良いの?
主に3つ。まず「速さ」で、パッケージを並列ダウンロードしてキャッシュも賢く使う。次に「安全性」で、yarn.lockファイルでバージョンを厳密に固定する。最後に「確実性」で、チーム全員が同じバージョンのパッケージを使えることを保証するんだ。
今でもnpmより速いの?
Yarn Berryって何が違うの?
結局どっちを使えばいいの?
正直、今はどちらでも大差ないよ。チームで統一されていればOK。ただし最近はpnpmという第三の選択肢も人気で、ハードリンクを使ってディスク容量を大幅に節約できるんだ。npm、Yarn、pnpmの三つ巴で、パッケージマネージャー界は群雄割拠だよ。
まとめ:ざっくりこれだけ覚えればOK!
「Yarn」って出てきたら「npmの代わりに使えるJavaScriptの高速パッケージ管理ツール」と思えればだいたいOK!
📖 おまけ:英語の意味
「Yet Another Resource Negotiator」 = さらにもう一つのリソース交渉者
💬 「Yet Another(さらにもう一つの)」はIT業界でよく使われる命名パターンで、「npm以外のもう一つの選択肢」という意味が込められているよ。Yarnは「毛糸」の意味もあって、依存関係を糸で紡ぐイメージもあるよ