ペアプログラミング
プログラミングの やり方だよ
2人一組で1台のコンピュータを使うよ
片方がコードを書いて、片方が口出しするよ
簡単に書くよ
ペアプログラミング(英:pair programming)とは
二人羽織プログラミングのこと。
もう少し具体的に書くと
プログラミングの やり方のひとつ
であり
2人一組で1台のコンピュータを使い、あーだこーだと相談しながらソースコード
(人間語で書いたプログラムの元ネタ)を書いていく やり方
です。
詳しく書くよ
サクっと一言で説明すると
「2人一組でやりますよ!」なプログラミングのやり方
が「ペアプログラミング」です。
二人羽織みたいなものですね。
まずは2人一組になって、1台のコンピュータの前に座ります。
今回はピヨ太君とピヨ子さんが組んでコンピュータの前に座りました。
2人のうち、片方は手を動かす係です。
ソースコード(プログラムの元ネタ)を書く役割を担います。
もちろん自分でも考えますけどね。
今回はピヨ太君が手を動かす係になりました。
もう一方はサポート役です。
手を動かす係と一緒に考えて、必要に応じて口出しする役割を担います。
今回はピヨ子さんが口出しする係になりました。
2人の役割分担は
・手を動かす係
・口出しする係
です。
ピヨ太君とピヨ子さんは、あーでもない、こーでもない、と言い合いながら、1つのソースコードに手を入れていきます。
このように2人で協力しながら1つのソースコードを作っていくプログラミングのやり方がペアプログラミングです。
単純に考えれば、ペアプログラミングの作業効率は1人でやる半分です。
実際にソースコードを書くのはピヨ太君だけですからね。
ピヨ太君とピヨ子さんが、それぞれソースコードを書けば、2倍のスピードで作業が進むはずです。
ただし、それは「単純に考えれば」です。
ピヨ太君は1人でやっていると、お昼寝してしまうかもしれません。
2人でやっていれば、サボりにくいでしょう。
ピヨ子さんが見ていますからね。
あるいは、上手く進まないときの状況も違います。
1人で考えていると、煮詰まってしまうかもしれません。
2人でやっていれば、あーだこーだと相談できます。
2人の意見をぶつけあうことで画期的な解決策が思い浮かぶかもしれません。
他にも、教育面で良い効果が期待できます。
へぼプログラマのピヨ太君がスーパーエンジニアのピヨ子さんと一緒にプログラミングをするのです。
ピヨ太君はピヨ子さんの仕事のやり方を間近で学べます。
ピヨ子さんも、ピヨ太君をアゴで使えば少しは気分転換になるかもしれません。
このように、ペアプログラミングにはペアプログラミングなりのメリットがあります。
もちろん、デメリット(状況によっては1人でやった方が速い、など)もありますけどね。
普通のプログラミングが個人競技だとすれば、ペアプログラミングはチーム競技です。
あくまで個人的な意見ですが、個人でやるプログラミングとペアプログラミングに優劣はないと思います。
テニスを考えれば分かりやすいのではないでしょうか。
「シングルスとダブルスでは、どちらが優れた競技か?」と考えるのは無意味でしょう。
参加人数や経験の有無など、いろいろな要素によって、どちらが適しているか変わってくるはずです。
ペアプログラミングも同じです。
導入するかは状況を見て判断してください。
あと、今回の説明では「手を動かす係」と「口出しする係」で役割分担しましたが
・実際のプログラムを作る係
・作ったプログラムをテストするためのプログラム(テストコード)を作る係
のように役割分担する場合もあるようです。
一応、頭の片隅にでも置いておいてあげてください。
一言でまとめるよ
まぁ「ペアプログラミング」って単語が出てきたら「2人一組で1台のコンピュータを使ってやるプログラミングのやり方なんだな~」と お考えください。
おまけ
■訳してみるよ
「pair(ペア)」の意味は「対」とか「一対」とか「一組」とか「一組にする」とかです。
「programming(プログラミング)」は「program(プログラム)」+「ing」です。
「program(プログラム)」の意味は「計画」とか「演目」とか「(コンピュータの)プログラム」とかです。
何となく くっつけると
一組でプログラムを作る
となります。
■検索してみる?






