英文原文:
pair programming (give it a rest)
這是一篇痛斥,我真的很生氣。
我知道結對程式設計有很多可以看到的好處。我知道有些人深信結對程式設計能幫助初級程式設計師更快的提高進步。我知道有些人深信它能讓你減少 bug 的產生。我知道有些人深信它能幫助增加團隊的凝合力。如此等等…我知道有很多研究都對此加以證實。我也讀了不少,但這些研究都像是在跟我作對,沒有乙個是適合我的。乙個都沒有。如果按照那些自稱能讓我更有效率的指導強行對我施行結對程式設計,我寧願立即辭職。如果結對程式設計是軟體業唯一允許的實踐方法,我寧願單幹,自己開公司。如果程式設計工作只能用結隊程式設計實現,那我選擇放棄程式設計。我會選擇一種行當,一種沒有這些多餘的要求我從事社交活動、被人打攪的準則的行當。(不斷的被打攪是結對程式設計的基本信條之一。長時間的結對程式設計的情況下乙個人怎麼能進入最高效率狀態、進入 zone 境界?這超出了我的能力。)
結對程式設計跟我的個性真是無法相容,我是乙個能力很強、技術很高的程式設計師。我知道,因為我媽媽這樣說的。;) 事實上,我的能力和技術證明了結對程式設計的非必要性。結對程式設計對於增加程式設計師的效率和開發出最好的產品都絕對不是必須的。它對我反而有負面影響。
所以,如果你是這些人中的一員,請閉嘴,不要再說什麼結對程式設計了。它就像是一支又老又無聊的頌歌,我早就聽煩了。沒錯,它可能很適合你。沒錯,它可能很適合你的團隊。但你們只是少數——非常少但噪音很大的少數。幹那些適合你自己的,但請尊重其他人,讓其他人做適合他們的事。我很久沒有聽到或讀到有人抨擊結對程式設計有多麼的糟糕了。集中你的注意力,努力思考,深入問題,設計解決方案,正確的實現,系統化的測試。我們不需要把思想觀點從喉嚨裡擠出來,掛在臉上,顯示它是多麼「神奇」和多麼具有「革命性」。我們只是在開發,管好自己的事就行了。如果你認為把一種程式設計實踐方法當作宗教式的宣傳比程式設計本身更重要,那你是絕對需要結對程式設計來幫助你提高效率。好的程式設計師,少說,多做。
從結對程式設計到結對工作
熟悉極限程式設計的人都知道,在極限程式設計的十二項實踐中,有乙個非常重要的實踐就是結對程式設計,也就是兩個人坐在同一臺電腦前面,使用相同的鍵盤和滑鼠來開發同樣的乙個模組,乙個負責 的鍵入,另外乙個人負責盯緊可能出現的錯誤,包括低階錯誤和方向性的錯誤。而且,當乙個問題對其中乙個人難以解決而恰好是另外乙...
從結對程式設計到結對工作
熟悉極限程式設計的人都知道,在極限程式設計的十二項實踐中,有乙個非常重要的實踐就是結對程式設計,也就是兩個人坐在同一臺電腦前面,使用相同的鍵盤和滑鼠來開發同樣的乙個模組,乙個負責 的鍵入,另外乙個人負責盯緊可能出現的錯誤,包括低階錯誤和方向性的錯誤。而且,當乙個問題對其中乙個人難以解決而恰好是另外乙...
結對程式設計理解
做呼叫中心監控系統的時候,跟專案經理兩個人結對程式設計。他負責寫 我負責回答所有他對系統中不理解 中的地方。我們兩個經常就某個功能實現的設計討論開來,我們互相發現對方設計方面的不足,最後統一乙個好的 設計方法。結對程式設計的那段時間,我統計了一下我們的開發效率是兩個人原來開發效率的130 提高了30...