|
|
一般問題
- 建立程序的調(diào)試版本
- 及時修改所有錯誤
- 及時徹底測試代碼,不惜耽誤進度
- 不依賴測試組來測試代碼
- 嚴格按照如下的編碼優(yōu)先級(正確,可測試,可維護,效率)
- 打開所有的編譯警告
將更改歸并到主程序
- 處理掉所有的警告
- 進行功能單元測試
- 單步測試每一條編碼路徑,并觀察數(shù)據(jù)流
- 沒有必要,不要清理代碼,清理代碼之后要嚴格測試
- 在代碼文檔中指出你的代碼的危險之處
- 簡單化代碼,保證程序維護人員能理解你的代碼
實現(xiàn)了一個函數(shù)或子系統(tǒng)后
- 修改或創(chuàng)建源代碼文件后,需要及時修改或創(chuàng)建源代碼文件說明部分(包括文件和函數(shù)兩部分);
- 使用斷言來檢查函數(shù)參數(shù)的有效性
- 剔除代碼中的未定義或無意義的代碼
- 保證每個數(shù)據(jù)中沒有不確定的值
- 對難于理解的斷言做解釋
- 在代碼中,不做任何假設(shè)
- 使用斷言警告可能出現(xiàn)的非常情況
- 做防御性的程序設(shè)計,在代碼中,不隱藏錯誤
- 對用匯編優(yōu)化的算法,使用另一個算法來驗證
- 使用確認代碼或數(shù)據(jù)啟動的檢查
- 消除代碼中的隨機行為
- 在代碼中注意無用信息的產(chǎn)生
- 注意代碼中的希奇古怪的行為
- 建立子系統(tǒng)測試
- 在設(shè)計和代碼中消除任意情況的出現(xiàn)
- 做完整性檢查
- 永遠不舍棄調(diào)試語句
- 不使用不標準的數(shù)據(jù)變量類型
- 保證沒有變量或表達式出現(xiàn)上溢或下溢
- 準確的實現(xiàn)設(shè)計,保證沒有誤差
- 保證同樣功能的代碼在程序中只有一份
- 盡量減少if的使用
- 盡量減少復(fù)雜?:的使用
- 孤立專用代碼
- 不使用有風險的慣用語
- 不混用不同優(yōu)先級的運算符
- 不使用把錯誤和返回值一起返回的函數(shù)
- 不使用尚未分配的空間
- 不使用已經(jīng)釋放的空間
- 不要多用輸出緩沖存儲
- 不向靜態(tài)或全局緩沖區(qū)輸出數(shù)據(jù)
- 不依賴其他函數(shù)內(nèi)部細節(jié)(未明確的功能)來完成本函數(shù)內(nèi)的功能
- 在代碼中不要把過多的語句放在一行中
- 消除代碼中多余的靈活性
- 不要使用試探法編寫程序
設(shè)計了一個函數(shù)或子系統(tǒng)后
- 評價此特征是否符合產(chǎn)品的市場策略
- 嚴格區(qū)分錯誤代碼和正常的返回值
- 保證函數(shù)界面難于出現(xiàn)誤操作
- 排除具有多用途且面面俱到的函數(shù)
- 排除太靈活的(空空洞洞的)函數(shù)參數(shù)
- 在函數(shù)不再需要時,返回一個錯誤條件
- 保證在調(diào)用點函數(shù)易讀
- 盡量排除布爾量或命令參數(shù)輸入,多用枚舉變量
修改錯誤時
- 錯誤無法消失,是否能找到錯誤的根源
- 修改錯誤的根源,而不是錯誤的癥狀
VC動畫構(gòu)件界面標準
- 組態(tài)時盡可能多地體現(xiàn)構(gòu)件運行時的顯示外觀
- 使用MCGS的缺省字體(System 10號);
- 使用統(tǒng)一的界面大。
- 構(gòu)件屬性頁大。212*154;
- 屬性頁內(nèi)所有控件應(yīng)當在198*147的矩形范圍內(nèi),該矩形范圍的左上角位于屬性頁的7*7處;
- 在屬性頁內(nèi)使用Group Box時,Group Box內(nèi)控件左上角與Group Box控件距離不小于7*13;
- 界面應(yīng)遵循基本的對齊原則,盡可能作到簡捷、整齊;
- 使用MCGS標準的顏色、線型選擇方式;
其它
- 盡可能使用C++風格的注釋形式
- 除變量、常量定義外,使用行注釋形式
|
|
|