|
10、嚴禁使用未經(jīng)初始化的變量。聲明變量的同時對變量進行初始化。
11、編程時,要注意數(shù)據(jù)類型的強制轉(zhuǎn)換。
六、函數(shù)、過程
1、函數(shù)的規(guī)模盡量限制在200行以內(nèi)。
2、一個函數(shù)最好僅完成一件功能。
3、為簡單功能編寫函數(shù)。
4、函數(shù)的功能應該是可以預測的,也就是只要輸入數(shù)據(jù)相同就應產(chǎn)生同樣的輸出。
5、盡量不要編寫依賴于其他函數(shù)內(nèi)部實現(xiàn)的函數(shù)。
6、避免設計多參數(shù)函數(shù),不使用的參數(shù)從接口中去掉。
7、用注釋詳細說明每個參數(shù)的作用、取值范圍及參數(shù)間的關(guān)系。
8、檢查函數(shù)所有參數(shù)輸入的有效性。
9、檢查函數(shù)所有非參數(shù)輸入的有效性,如數(shù)據(jù)文件、公共變量等。
10、函數(shù)名應準確描述函數(shù)的功能。
11、避免使用無意義或含義不清的動詞為函數(shù)命名
12、函數(shù)的返回值要清楚、明了,讓使用者不容易忽視錯誤情況。
13、明確函數(shù)功能,精確(而不是近似)地實現(xiàn)函數(shù)設計。
14、減少函數(shù)本身或函數(shù)間的遞歸調(diào)用。
15、編寫可重入函數(shù)時,若使用全局變量,則應通過關(guān)中斷、信號量(即P、V操作)等手段對其加以保護。
七、可測性
1、在編寫代碼之前,應預先設計好程序調(diào)試與測試的方法和手段,并設計好各種調(diào)測開關(guān)及相應測試代碼如打印函數(shù)等。
2、在進行集成測試/系統(tǒng)聯(lián)調(diào)之前,要構(gòu)造好測試環(huán)境、測試項目及測試用例,同時仔細分析并優(yōu)化測試用例,以提高測試效率。
八、程序效率
1、編程時要經(jīng)常注意代碼的效率。
2、在保證軟件系統(tǒng)的正確性、穩(wěn)定性、可讀性及可測性的前提下,提高代碼效率。
3、不能一味地追求代碼效率,而對軟件的正確性、穩(wěn)定性、可讀性及可測性造成影響。
4、編程時,要隨時留心代碼效率;優(yōu)化代碼時,要考慮周全。
5、要仔細地構(gòu)造或直接用匯編編寫調(diào)用頻繁或性能要求極高的函數(shù)。
6、通過對系統(tǒng)數(shù)據(jù)結(jié)構(gòu)劃分與組織的改進,以及對程序算法的優(yōu)化來提高空間效率。
7、在多重循環(huán)中,應將最忙的循環(huán)放在最內(nèi)層。
8、盡量減少循環(huán)嵌套層次。
9、避免循環(huán)體內(nèi)含判斷語句,應將循環(huán)語句置于判斷語句的代碼塊之中。
10、盡量用乘法或其它方法代替除法,特別是浮點運算中的除法。
九、質(zhì)量保證
1、在軟件設計過程中構(gòu)筑軟件質(zhì)量。代碼質(zhì)量保證優(yōu)先原則
(1)正確性,指程序要實現(xiàn)設計要求的功能。
(2)穩(wěn)定性、安全性,指程序穩(wěn)定、可靠、安全。
(3)可測試性,指程序要具有良好的可測試性。
(4)規(guī)范/可讀性,指程序書寫風格、命名規(guī)則等要符合規(guī)范。
(5)全局效率,指軟件系統(tǒng)的整體效率。
(6)局部效率,指某個模塊/子模塊/函數(shù)的本身效率。
(7)個人表達方式/個人方便性,指個人編程習慣。
2、只引用屬于自己的存貯空間。
3、防止引用已經(jīng)釋放的內(nèi)存空間。
4、過程/函數(shù)中分配的內(nèi)存,在過程/函數(shù)退出之前要釋放。
5、過程/函數(shù)中申請的(為打開文件而使用的)文件句柄,在過程/函數(shù)退出前要關(guān)閉。
6、防止內(nèi)存操作越界。
7、時刻注意表達式是否會上溢、下溢。
8、認真處理程序所能遇到的各種出錯情況。
9、系統(tǒng)運行之初,要初始化有關(guān)變量及運行環(huán)境,防止未經(jīng)初始化的變量被引用。
10、系統(tǒng)運行之初,要對加載到系統(tǒng)中的數(shù)據(jù)進行一致性檢查。
11、嚴禁隨意更改其它模塊或系統(tǒng)的有關(guān)設置和配置。
12、不能隨意改變與其它模塊的接口。
13、充分了解系統(tǒng)的接口之后,再使用系統(tǒng)提供的功能。
14、要時刻注意易混淆的操作符。當編完程序后,應從頭至尾檢查一遍這些操作符。
15、不使用與硬件或操作系統(tǒng)關(guān)系很大的語句,而使用建議的標準語句。
16、建議:使用第三方提供的軟件開發(fā)工具包或控件時,要注意以下幾點: |
|
【收藏】【打印】【進入論壇】 |
|
|
|
|
|
|
|