~/VibeHandbook
$39

05 · 04

パッケージと依存関係

誰もアプリをまるごとゼロから書いたりはしません。難しくてありふれた問題——日付の整形、決済の処理、カレンダーの描画——は、すでにほかの人たちによって解決され、パッケージにまとめられています。パッケージとは、自分で書く代わりにプロジェクトに取り込む、再利用可能なコードのかたまりです。プロジェクトの依存関係(dependencies)とは、それが頼りにしているパッケージの一覧です。

JavaScriptの世界でこれを管理するツールが npm(Node Package Manager)です。2つのファイルが帳簿づけをします。

  • package.json — プロジェクトが必要とするものの、人が読める一覧と、それを動かすためのコマンド。あなた(またはAI)がこれを編集します。
  • lockfile(ロックファイル)package-lock.json など) — すべてのパッケージとその正確なバージョンの、機械が生成した厳密な記録です。これがあるおかげで、あなたのマシン、チームメイトのマシン、サーバーのどこでもアプリが同じようにビルドされます。これは手で編集せず、ツールに管理させます。
{
  "name": "my-app",
  "scripts": {
    "dev": "next dev",
    "build": "next build"
  },
  "dependencies": {
    "next": "16.0.0",
    "react": "19.0.0"
  }
}

なぜ気にするのでしょう?AIが「これのためにライブラリを追加しましょう」と言うとき、それは package.json を編集していて、あなたは誰かほかの人のコードを信用していることになります——よく知られた少数の依存関係のほうが、得体の知れないものの山よりも安全です。そしてビルドが原因不明で壊れたとき、依存関係の食い違いがよくある容疑者であり、「パッケージを削除して入れ直す」が本当によくある現実的な対処法になります。

オフラインでも読みたい?

PDF + EPUB + ダウンロード可能なプロンプトライブラリ + バージョンアップデートを入手しよう。

$ PDFを入手 — $39