「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ピンポンペアプログラミング

pointこの用語のポイント

pointプログラミングの やり方だよ

point2人一組でやるよ

point片方がコードを書いて、片方が口出しするよ

point途中で役割を交代しながら進めるよ

スポンサーリンク

簡単に書くよ

ピンポンペアプログラミング(英:ping-pong pair programming)とは

2人一組で1台のコンピュータを使ってやるプログラミングのやり方(ペアプログラミング)の やり方のひとつ
であり

それぞれの役割を固定化しないで、途中途中で役割を交代しながら進めるやり方
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「ペアプログラミング」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ペアプログラミングは「2人一組でやりますよ!」なプログラミングのやり方です。
二人羽織みたいなものですね。

ピンポンペアプログラミング1

まずは2人一組になって、1台のコンピュータの前に座ります。
今回はピヨ太君とピヨ子さんが組んでコンピュータの前に座りました。

ピンポンペアプログラミング2

2人のうち、片方は手を動かす係です。
ソースコードプログラムの元ネタ)を書く役割を担います。
もちろん自分でも考えますけどね。

今回はピヨ太君が手を動かす係になりました。

ピンポンペアプログラミング3

もう一方はサポート役です。
手を動かす係と一緒に考えて、必要に応じて口出しする役割を担います。

今回はピヨ子さんが口出しする係になりました。

ピンポンペアプログラミング4

2人の役割分担は

・手を動かす係
・口出しする係


です。

ピンポンペアプログラミング5

ピヨ太君とピヨ子さんは、あーでもない、こーでもない、と言い合いながら、1つのソースコードに手を入れていきます。

このように2人で協力しながら1つのソースコードを作っていくプログラミングのやり方がペアプログラミングです。

ピンポンペアプログラミング6

単純に考えれば、ペアプログラミングの作業効率は1人でやる半分です。
実際にソースコードを書くのはピヨ太君だけですからね。
ピヨ太君とピヨ子さんが、それぞれソースコードを書けば、2倍のスピードで作業が進むはずです。

ピンポンペアプログラミング7

ただし、それは「単純に考えれば」です。

ピヨ太君は1人でやっていると、お昼寝してしまうかもしれません。

ピンポンペアプログラミング8

2人でやっていれば、サボりにくいでしょう。
ピヨ子さんが見ていますからね。

ピンポンペアプログラミング9

あるいは、上手く進まないときの状況も違います。
1人で考えていると、煮詰まってしまうかもしれません。

ピンポンペアプログラミング10

2人でやっていれば、あーだこーだと相談できます。
2人の意見をぶつけあうことで画期的な解決策が思い浮かぶかもしれません。

ピンポンペアプログラミング11

他にも、教育面で良い効果が期待できます。

へぼプログラマのピヨ太君がスーパーエンジニアのピヨ子さんと一緒にプログラミングをするのです。
ピヨ太君はピヨ子さんの仕事のやり方を間近で学べます。

ピンポンペアプログラミング12

ピヨ子さんも、ピヨ太君をアゴで使えば少しは気分転換になるかもしれません。

ピンポンペアプログラミング13

このように、ペアプログラミングにはペアプログラミングなりのメリットがあります。
もちろん、デメリット(状況によっては1人でやった方が速い、など)もありますけどね。

なお、今回の説明では「手を動かす係」と「口出しする係」で役割分担しましたが

・実際のプログラムを作る係
・作ったプログラムをテストするためのプログラム(テストコード)を作る係


のように役割分担する場合もあるようです。

ピンポンペアプログラミング14

以上を踏まえて

役割を交代しながら進めるペアプログラミング

が「ピンポンペアプログラミング」です。

ピンポンペアプログラミング15

由来は「ピンポン(卓球)」みたいですね。
ダブルスの場合2人で交互に球を打つからだと思いますが、個人的には「テニスじゃダメだったのかな?」と疑問を持っています。


image piyo2

一言でまとめるよ

まぁ「ピンポンペアプログラミング」って単語が出てきたら「役割を交代しながら進めるペアプログラミング(二人羽織プログラミング)なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像009
書籍画像055

おまけ

■訳してみるよ

「ping-pong(ピンポン)」の意味は「卓球」です。
「pair(ペア)」の意味は「対」とか「一対」とか「一組」とか「一組にする」とかです。
「programming(プログラミング)」は「program(プログラム)」+「ing」です。
「program(プログラム)」の意味は「計画」とか「演目」とか「(コンピュータの)プログラム」とかです。
何となく くっつけると

卓球のようなやり方で、一組でプログラムを作る

となります。





書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
あたえる人があたえられる
おい点P、動くんじゃねえ!──ニガテ民のための算数と数学の本