1、致命的異常終止決不允許
2、以這個次序編寫:用戶手冊、說明書、幫助、源代碼
3、除非你使用Risk Factor Analysis (RFA),否則一個程序?qū)⒒ㄙM雙倍你認(rèn)為開發(fā)所需的時間---重復(fù)工作
4、編碼工作量應(yīng)該不超過開發(fā)工作的百分之二十
5、測試應(yīng)該至少占工程的百分之三十
6、注釋應(yīng)該至少要占源代碼的百分之二十
7、一條錯誤信息應(yīng)該報告什么發(fā)生了,關(guān)于這個用戶能夠作什么,程序下一步要做什么,以及哪一行代碼造成了該問題?可能也要注意時間,用戶名和環(huán)境
8、好的程序?qū)⒆詣拥匕l(fā)送最近的錯誤信息給永久性媒體
9、調(diào)用一個例程三次?隱藏它調(diào)用一次?不要隱藏
10、除了菜單和錯誤陷阱,例程應(yīng)精確地只需要一個入口和一個出口
11、帶有清晰的變量名和例程名的文檔代碼
12、數(shù)據(jù)庫應(yīng)該是相關(guān)的
13、總是采用最好的算法
14、首先優(yōu)化最慢的例程,使用 Profiler 標(biāo)志他們
15、最好的開發(fā)語言通常是具有最短開發(fā)時間的那個
16、要求顧客在用戶手冊和說明書上簽字
17、首先編寫更具風(fēng)險的模塊
18、讓簡單的維護成為引導(dǎo)你的燈光
19、檢查你寫的每個簽名和拼寫
20、不要寫任何你能夠用一個3 * 5 卡片封面復(fù)制的程序
21、知道何時應(yīng)該完成何事
22、沒有任何列表是完善的
23、困難不是你正在看之處
24、存在的規(guī)則和規(guī)律可以讓人們免于思考