Sunday, January 28, 2001

程式設計的箴言──擷取自《資料結構與程式設計》

前一陣子轉貼了《教堂與市集》的格言後,大家的反應還滿正面的,於是就趁年假,再為大家剪貼一下《資料結構與程式設計》中的箴言:

  1. 將資料專門化和抽象化的過程,是先於資料結構的選擇和程式的撰寫。
  2. 一個具體的問題描述是與一千個尚未運用的抽象概念等值的。
  3. 永遠小心謹慎地給予變數及函式合宜的名稱,並提供充分的說明。
  4. 盡量使你的文件(document)簡潔但具描述性。
  5. 花在閱讀程式的時間永遠比撰寫程式來得多。
  6. 切勿見樹不見林。
  7. 每一個函式只做一個工作,且須將其做好。
  8. 每一個函式必須隱藏部分東西。
  9. 盡量使得關連性簡單,盡可能避免使用全域(global)變數。
  10. 不要引起副作用(side-effects)。
  11. 盡可能地,提前做好除錯與測試。
  12. 測試資料之品質遠較數量重要。
  13. 程式測試可用以顯示錯誤之存在,而非其不存在。
  14. 對於每一小型模組採用玻璃箱(glass-box )測試;對於程式中較大段落,則採用黑箱測試(black-box)。
  15. 大部分的程式以百分之九十的時間處理百分之十的指令。
  16. 找出關鍵的百分之十,並全力使其更具效率。
  17. 絕不在規格說明確定及完整前開始編寫程式。
  18. 瞭解你的問題,對每一個函式定義精確的前置條件及後置條件。
  19. 盡可能地使演算法簡單。
  20. 如有疑問時,選擇簡單的方法。
  21. 選擇演算法時,將時間與空間的邊際效應列入考慮範圍。
  22. 絕不怕重新開始:下一次可能會是既精簡又容易。
  23. 確定你完全瞭解問題。
  24. 如需改變問題的項目,明確解釋所做的變動。
  25. 匆忙行事,事後後悔;倉促地撰寫程式就會永遠地除錯。
  26. 重新開始多半比對舊程式打補釘容易得多。
  27. 要經常計劃建造原型(prototype )及丟棄它;不論事前規劃如何,你都得如此做的。
Tags: [] [] [] []

0 comments: