Pair Programming 中 Reviewer與Driver注視相同螢幕,從不同角度思考,即時查核以降低錯誤率和提高除錯率,經常要等
待 Driver 思考及輸入到螢幕後才能進行思考,頻繁的等待容易使注意力流失導致思考空轉,若是能善用等待時間除了避免上述問題之外,更能增加工作
效益。
在 coding 的過程中有許多瑣碎的動作,像是查找 API 文件、局部程式片段的最佳化、測試不同寫法的正確性等等,若與程式主要方向的開發交替
進行則會不停打斷主軸上的思考。可將這些工作交給 Reviewer , Driver 可專注思考主要方向,此時 Reviewer 的角色轉為
Supporter 。
兩人各用一台電腦相鄰而坐,中間不宜有障礙阻擋;Driver 仍舊主導coding的大方向,持續專注且深入的思考, Supporter 優先處理
原先 Reviewer的工作之外且適當提供後勤支援。
Supporter 須持續關注Driver 的動向,使 Driver 能隨時提出 issue進行討論不須重新說明現況;這表示Supporter
必須能即刻暫停其它工作進入狀況,討論完後也要能馬上回到暫停的工作;為此 Supporter 必須具備熟練的 Programming 技能、擁有
充分的 domain knowledge 足以快速回應以及短暫且專注的思考方式(不能忘我)。