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