
不好的設計
|
29
不好的設計
當然,沒必要的程式碼並非只是犯下低級的程式碼錯誤或拙劣維護的產物。它也可能是
高級的設計缺陷造成的。[Page-26]
劣質的設計,可能會在元件之間產生許多沒必要的通訊路徑—許多不知道原因的資料管
理程式。資料被傳送得愈遠,就愈有可能在半途損壞。
程式碼元件會隨著時間變得愈來愈囉嗦,或變得與原本的用途全然不同,留下一堆用不
到的程式碼。發生這種情況時,勇敢地清除所有的枯枝,將舊的元件換成較簡單、可完
成必要工作的元件。
設計時,應該先考慮現成的程式庫是否已經有可以解決編程問題的程式了。使用這些程
式庫可以免於編寫一大堆沒必要的程式碼。此外,還有一個紅利,受歡迎的程式庫通常
很可靠、可擴充,而且很好用。
空白字符
別害怕!我不是要攻擊空白字符(也就是空格、tab 及換行)。空白字符是好東西,別害
怕使用它們。如同在讀詩時適當地暫停,合理使用空白字符也可以協助我們架構程式碼。
使用空白字符並非總是產生誤導或沒必要,只是你可能使用太多這種好東西了—在函式
之間使用 20 個換行或許有點過份。
請你考慮使用括弧來將邏輯架構群組化。有時括弧可以協助你釐清邏輯,即使它們不是
被用來防止運算符順序錯誤也是如此。但有時它們是沒必要且礙事的。
那我們該做什麼?
平心而論,通常這種累贅的程式碼不是被故意寫出來的。很少有人會故意寫費力、重
覆、沒意義的程式碼。(但有一些懶惰的程式員會不斷地選擇廉價的路線,而不是花更
多時間,編寫漂亮的程式碼。)大部分情況下,這些問題會發生在已被許多人長期維護、
擴充、使用及除錯的舊版程式碼上面。 ...