Jul
27
Drake on Sun, 2008-07-27 12:58
這是一篇文章聊到「怎麼讓程式碼與程式員之間的關係,從原來的一對一擴展成為多對多的樣貌,進而從中獲得好處」的文章,撰文者 qing 是一位非常認真汲汲於 programming methodology 與 java programming 的 guru,同時也是我非常敬愛的新竹中學軟體研究社學長。
文章中提到的 XP,也算是發表好幾年的方法論了,而且我猜,說不定太極影音的 MIS 系統開發組就採用了不少裏頭提到的方法。我在大五參加遊戲設計比賽時,也採用過 pair programming 來試驗成效,大抵來說,的確是減少了一些不必要的邏輯錯誤或 typo,同時 debug 的成效也比一個人埋頭苦幹在十多萬行的 c++ 程式碼裏頭來得快多,但我想 pair programming 最直接的助益,就在於有另一個人和你一樣,對一個系統或一大段程式碼的夠了解,足夠到可以和你討論一些細節或延伸的想法與設計,這大大地讓 programmer 擺脫了「I am programming alone without anyone figuring out what I was/am/will be doing...」,非常有趣的經驗。
最後一段的「讓每個成員寫出一致風格的程式碼」,讓我忍不住想到印度的斯巴達式資訊教育~
- Drake's blog
- 4985 reads
- Email this Blog entry

2 comments
pair programming 是個非常有趣的經驗。
我並沒有看過 xp 裏的介紹,也沒閱讀過提出 pair programming 的 paper 來,不過對於兩個人一同看程式碼;coding 過程中,有人和你討論這個時候該用哪個 data structure;或是可以把之前寫的兩個 class method 與正在寫的這個 method 重整,重新定義出更可以重覆利用的 method 等過程…印象非常的深刻。
coding 中的 programmer,有時很容易因為 debug 而被整個思緒搞得很混亂(當然,也是有人很擅長 debug 的),然後當你想找個人討論或聊時,又常常會一問三不知,要不就是對方的搭腔,常常和你想問的沒啥關係。總之,就是缺乏與你一樣夠了解一件事的人,所以討論很難成,但 pair programming 卻無形中提供了一個人供你討論,這是個非常難能可貴的情況。
大型編制是不是就不太可能,這我不曉得,也懶得去曉得。不過我非常建議有機會的人,應該去試試看 pair programming,好好認真執行它個數個禮拜至數週,從中會有很多不同感受的。
PS. 我發覺你每次留的 link,我都看不出有什麼關聯性就是了,就當你是在給自己的 blog 打廣告好了 :)
好幾年前有緣跟一堆印度仔一起共事,台灣人講OO,美國人講OO,印度人講OO,很有意思,似乎宗教信仰會影響OO的觀點?
Pair_Programming是屬於雙向溝通,也算是人工型的Debug,應該是使少數編制,大型編制不太可能...,人數參與越多,錯誤率降低很多,時程就會拖很長,好壞參半!
由閣下轉載的文章來看,專業分工跟對等分工,差不多已經走到面臨抉擇的時候了
http://tw.myblog.yahoo.com/Akai-jokejoke/article?mid=853&prev=959&next=7...
這整篇文章看起來像是作者的情緒抒發,Java_Class會隨後趕上Qt_Class的數量,要從數千個Class找出合適並套用,內部語法結構風格還要一致,還真的是一門大學問!
〝最後一段的「讓每個成員寫出一致風格的程式碼」,讓我忍不住想到印度的斯巴達式資訊教育~〞
這是寫給Supervisor看的,讓Supervisor有所體認,自己的分量到底夠不夠,讓每個成員寫出一致風格的程式碼。
Post new comment