您的位置:首頁>正文

代碼品質:結對程式設計的好處與壞處

結對程式設計是軟體發展過程中所使用的一種技術, 兩名程式開發人員共用同一台工作站。 其中一個扮演駕駛者(Driver)的角色,

進行代碼編寫, 另一個扮演觀察員(Observer)或導航員(Navigator)的角色, 對代碼進行評測。 他們可以輪流編寫代碼和測試案例, 還可以坐在一起交流思想, 解決問題, 而不會想偷懶去刷手機。

結對程式設計的概念已經存在很長一段時間, 已經有許多公司認同這種程式設計方式, 但也有許多公司表示他們不考慮採用。 結對程式設計需要花費的時間可能比個人程式設計更長, 但產生的 bug 比個人程式設計少;它需要公司付出多一倍的人力, 但程式設計的效率會比個人程式設計高。 這是一個比較有爭議的程式設計方式, 不同公司的需求不同, 對結對程式設計的看法就不一樣。

國外有位開發者 Sam Harris 對結對程式設計的利弊做出了客觀的總結分析,

總結內容如下:

結對程式設計的好處

1、互相鼓勵, 不容易沮喪:團隊工作能增加成員的工作積極性。 因為在面對問題的時候, 會有人一起分擔, 共同嘗試新的策略。

2、互相監督, 不容易偷懶:兩個人一起工作需要互相配合, 如果想偷懶去幹別的, 就會拖延工作進度。

3、互相學習程式設計技巧:在程式設計中, 相互討論, 可以更快更有效地解決問題, 互相請教對方, 可以得到能力上的互補。

4、可以培養和訓練新人:讓資深開發者和新手一起工作, 可以讓新人更快上手。

5、多雙眼睛, 少點 bug:兩人互相監督工作, 可以增強代碼和產品品質, 並有效的減少 BUG。

結對程式設計的壞處

1、與合不來的人一起程式設計容易發生爭執, 不利於團隊和諧。

2、經驗豐富的老手可能會對新手產生不滿的情緒。

3、一山不容二虎, 開發者之間可能就某一問題發生分歧, 產生矛盾, 造成不必要的內耗。

4、開發人員可能會在工作時交談一些與工作無關的事, 分散注意力, 造成效率低下。

等等......

因此, 是否採用結對程式設計需要根據公司的情況進行定奪。

並且, 結對程式設計的時間需要合理安排, 時間太長(8 小時及以上)容易產生疲勞, 時間太短(低於 1 小時)都沒進入工作狀態。

編譯自:FreeCodeCamp

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示