Skip to content

Latest commit

 

History

History
28 lines (26 loc) · 3.14 KB

File metadata and controls

28 lines (26 loc) · 3.14 KB

ペア・プログラミングのやり方

導入編(簡易版)

概要

  • ペアプログラミングとは、本来は二人が一つのキーボードでプログラミングをすること。
    • 本講義では互いにノートPCを所有しており、カスタマイズしていくと自身のPC以外では作業しづらくなる。このため、「Aさんが作業する際にはAさん自身のPCで作業し、その様子をBさんが眺める。Bさんが作業する際にはBさん自身のPCで作業し、その様子をAさんが眺める。」という形でやろう。
  • driverはキーボードを叩き、observer(あるいはnavigator)はdriverの書くコードを眺め、エラーや設計を吟味する。
  • driver = 車の運転者。問題解決の中心。
  • observer = 助手席に乗る人。運転を眺めながら取り組み方全般について吟味する。

やり方

  • 大前提
    • 優先度: 作業効率<情報共有
      • 「作業を分担して効率よく問題解決に取り組む」ことは求めていません。ペアプログラミングでは、二人で同一PCを使って作業に取り組み、プログラミング3ステップ(理解・整理・翻訳)を言葉で説明することで、互いに刺激し合いながらノウハウを共有することが目的。
    • 喋る
      • すべてのことを喋りながら作業する。頭の中に思い描いていることを言葉に して出そう。
      • 「喋りながら作業する」こと自体に慣れていないと難しい。最初はゆっくりで構わないし、「喋る->作業->喋る->作業」を細かく切り替えながらでも構わない。少しずつ慣れよう。
      • 悩むのも良いが 「一人で悩む」のは十秒程度 に留めよう。二人で解決できない場合には、周囲のグループや/先輩/先生に聞こう。
  • step 1: 作業を決める。
    • e.g., 「演習1に取り組もう。タイトルを眺める限りではPythonインタプリタを使うみたいだね。」「インタプリタって何だっけ?」
  • step 2: 役割(driver, observer)を決める。
    • e.g., 「取り敢えず私がdriverやるから、次変わってね。」「苦手意識があるから私からdriverやっても良い?」「今のどうやって調べたの? 何故そのキーワードでググろうとしたの?」
  • step 3: タスクに取り組む。
    • 作業中はお互い何をやっているか把握する。
      • パートナーが今なにをやってるかわからなくなったり、今なにをするべきか見失ったりすることはよく起こる。
      • 認識がズレだしたら1分以内に話し合って頭の中の同期を取ること。5分もおいてけぼりにしてしまうと、一人でプログラムを書くのと同じことになる。頻繁に同期をとることがペアプログラミングのミソだからだ。
  • step 4: 交代する。