【ぺあぷろぐらみんぐ】

ペアプログラミング とは?

💡 「2人で1つのコード」を書く
📌 このページのポイント
ペアプログラミングの仕組み function add(a, b) {'{'} return a + b; {'}'} // テスト追加中... 👤 ドライバー ⌨ コード入力 👤 ナビゲーター 💡 レビュー・設計 役割交代 ✓ バグの早期発見 ✓ 知識の共有 ✓ コード品質向上 2人1組で1つの画面に向かい、ドライバーとナビゲーターの役割を交代しながら開発する。
ペアプログラミングの仕組み
ひよこ ひよこ

2人でやると遅くならない?

ペンギン先生 ペンギン先生

コーディング速度は確かに1人の時より遅い。でもバグの混入が減る、設計の質が上がる、手戻りが減る効果で、プロジェクト全体では生産性が同等か向上するという研究結果が多いよ。特に複雑なロジックや重要な設計判断ではペアプロの効果が大きいんだ

ひよこ ひよこ

どんな場面で特に有効?

ペンギン先生 ペンギン先生

①新メンバーのオンボーディング(ベテランとペアで知識移転)、②複雑な問題の解決(2人の視点でアプローチ)、③重要な設計決定(その場でレビューされる)、④バグの調査(1人がコードを追い、1人が仮説を立てる)。逆に単純作業や定型的なコーディングにはもったいないよ

ひよこ ひよこ

おもしろい!うまくやるコツは?

ペンギン先生 ペンギン先生

①30分〜1時間ごとにドライバーとナビゲーターを交代、②ナビゲーターはキーボードを奪わない、③考えを声に出す(Thinking Aloud)、④適度に休憩を入れる(集中力が消耗しやすい)。一番大事なのは心理的安全性。「そのコード間違ってる」ではなく「こうしたらどう?」と提案するスタイルで

ひよこ ひよこ
ペンギン先生 ペンギン先生

ペアプロを拡張して3人以上(チーム全員)で1つのコードを書く手法だよ。1人がドライバー、残り全員がナビゲーター。10〜15分でドライバーを交代する。知識の属人化が防げて、チーム全員がコードベースを理解できる。重要な設計や複雑な障害対応に特に効果的だね

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ペアプログラミング」って出てきたら「2人1組でコードを書く開発手法」と思えればだいたいOK!
📖 おまけ:英語の意味
「Pair Programming」 = 対(ペア)プログラミング
💬 Pair(2人組)でProgramming。2人の目でバグを防ぐ「4つの目の原則」だよ
← 用語集にもどる