[約耳趣談軟體] 心得筆記:舊程式碼到底該不該砍掉重練?

  • 2862
  • 0
  • 2011-05-31

摘要:[約耳趣談軟體]心得筆記:舊程式碼到底該不該砍掉重練?

Ch24,Ch25重點,改以QA方式呈現...

Q:
該延用舊的程式碼還是砍掉重練?

A:
程式設計人員總想把舊程式碼丟棄再重新寫,因為舊程式總是一團糟,總是會有很多莫名其妙的怪東西。
那些你看不懂的東西,常常是多年來針對某些發生問題的修正。所以,當你決定丟掉舊程式碼再重寫時,其實是把所有過去的知識都丟掉了,大
部分的舊錯誤都可能再犯一次,甚至多一些舊版沒有的新問題。尤其在大型系統,任意的丟掉並重寫程式是非常危險的行為。
那我們應該怎麼做呢?
(1)可以在不丟掉原有程式碼的前提下,重整架構,修改介面,建立模組
(2)對於效率不好的程式,找出並重寫影響效率的部份,不需要全部重寫
(3)對於寫得很醜的Code,亂七八糟的命名,可善用編輯器功能來快速修正

Q:
客戶並不知道他們要的是什麼,怎麼辦?

A:
別再期望客戶知道他們要什麼。這種事從來沒發生過。
你得自己研究,花時間學習該領域的知識,然後找出一個設計能解決客戶的問題。
最後再設計一套好的使用者介面,客戶就會很高興。
如果客戶想參與設計的話,就拿一些無害(無關緊要?)的東西。譬如說外觀、字型、擺放位置,讓她們覺得有參與感就好。

Q:
展示時,使用者介面有多重要?

A:
(1)如果你將非常漂亮的介面展示給非程式人員看時,他們就會以為程式幾乎已經完工,反之亦然。
(2)如果你先做出完成度很高的介面原型,就馬上跟客戶討論,準備事後再實作程式邏輯。那麼,你就會被誤以為接下來的一年你甚麼都沒做。
結論:對於未完成的功能,你的使用者介面就應該畫得像是未完成的草圖。並想辦法控制(主導?)大家對時程的想法,讓大家每週都能感受到進度專案進度的增加(安撫?)