結對編程技術
出自 MBA智库百科(https://wiki.mbalib.com/)
結對編程(pair programming)
目錄 |
結對編程技術是指是兩位程式員並肩坐在同一臺電腦前,共同探討設計方案、共同設計演算法、共同編寫程式代碼、共同完成各種測試。通常做法是:要求兩個開發人員共用一臺電腦共同完成程式代碼的編寫,其中一個人負責具體的細節,而另外一個人關註整體。具體來說就是一個人負責控制鍵盤,我們通常稱為“駕駛員”,另一個人負責其它工作,包括隨時觀察“駕駛員”的工作情況,發現並告訴其操作性和策略性的失誤,我們通常把他稱為“導航員”,並且兩個人的角色可以隨時交換。這樣一來代碼就彙集了兩個人的智慧,代碼質量顯然有所提高。通過結對編程,兩個開發人員在一起可以取長補短,互相學習,共同提高。
(1)結對編程的實踐是簡單的,同時是一種有效的編寫和審視代碼的方法。兩人同時熟知代碼,並且將錯誤漏洞出現在代碼中的可能性大大減少。
(2)結對更有勇氣。一個人不敢嘗試的東西他的伙伴將有勇氣去嘗試並扼殺其原有的評估。
(3)結對能鼓勵團隊。由於代碼不是一個人獨立完成的,而將是屬於整個團隊所有。
(4)結對促使知識的傳播。由於在開發的過程中不斷的交換伙伴,而使每個成員熟知系統的每個一個模塊。
(5)結對能提高生產力。一個人在開發的過程中將會出現一段疲勞、消極的時期。如果雙人編程,則可以相互促進,當一方疲勞時,他們可以交換角色。他們將能保持強度(比一個人工作強)。
(6)結對是一件有趣的事。和他人一起工作是一件有意義,非常刺激而且簡單的游戲。它將會提高工作滿意度和提高士氣。
1.有利於培養團隊合作精神
溝通問題是一個項目開發設計成功與否的最重要因素之一。不僅包括設計人員和客戶的溝通,還包括在團隊內部。為了達到共同的目標,小組內的成員必需緊密合作,加強溝通,時刻瞭解對方意圖和進展,從而培養了設計員的合作精神。
2.有利於提高團隊的效率
結對編程是兩個人同時工作,在和同伴一起工作時,就會保持思想一直高度集中,而由於兩個人的思想彙集,也能創造很多新的編程思路和演算法,畢竟兩個人的智慧要勝過一個人的。兩個人經過討論,形成一致思想,使得在理解錯誤的風險上減少,所以兩人編程就等於同時有了一遍代碼複查,出錯幾率降低了很多。
3.有利於提高代碼的質量
首先,結對編程在糾正了一些同學的編碼的壞習慣的同時融合了每個人的編程優點,加強了編碼的規範的遵守。另外,結對編程是兩個人的腦力勞動,可以共同研究、共同學習,所以常常會去試驗新的編碼方式,以尋找最好的方法來實現,代碼質量明顯提高。