一、總體要求
1、必須嚴格執(zhí)行本規(guī)范以確保源代碼的可讀性及可維護性。
2、所有的程序文件都必須有注釋文字,并嚴格按照本規(guī)范中的“注釋規(guī)范”書寫。
二、命名規(guī)范
1.1 概述
1、必須使用語標準英文單詞,不允許使用中文拼音。
2、如果有名詞,必須使用單數(shù)形式。
3、使用大小寫混合格式,將連接的幾個單詞首字母大寫。
4、必須在3至30個字母以內。
5、如果使用縮寫,必須使用本規(guī)范附錄的縮寫范例。
1.2 文件命名規(guī)范
1、文件命名采用主謂結構,首字母大寫。
2、文件和文件夾的名稱應該精確地說明它們的用途。
1.3 函數(shù)命名規(guī)范
1、函數(shù)名和方法名以動詞開始,首字母大寫,如 SaveFileLog。
2、在命名函數(shù)時包括返回值的說明,如 GetFileName。
3、類名和屬性名以名詞開始,首字母大寫,如 EmployeeName。
4、在不同的類中的屬性,如果它們有相同的作用,則必須使用同樣的名稱。
1.4 變量命名規(guī)范
1、所有變量都必須有前綴,前綴使用2-4個字母,全部小寫。
2、避免與數(shù)據(jù)字典中的數(shù)據(jù)元素名相同。
3、避免與函數(shù)名、方法名、類名和屬性名相同。
4、避免使變量名為另一個變量名的一部分。
5、布爾變量名應該包含 Is,如 blnFileIsFound。
1.5 常量命名規(guī)范
1、常量所有字母都應該大寫,單詞之間用下劃線連接。
三、注釋規(guī)范
2.1 概述
1、注釋必須使用中文及中文的標點符號。
2、每行注釋的最大長度為100個字符。
3、將注釋與注釋分隔符用一個空格分開。
4、不允許給注釋加外框。
5、編碼的同時書寫注釋。
6、重要變量必須有注釋。
7、變量注釋和變量在同一行,所有注釋必須對齊,與變量分開至少兩個Tab鍵。
8、典型算法必須有注釋。
9、在循環(huán)和邏輯分支的地方必須寫上注釋。
10、程序段或語句的注釋在程序段或語句的上一行。
11、在代碼交付之前,必須刪掉臨時的或無關的注釋。
2.2 文件與函數(shù)的注釋
1、文件和函數(shù)的頭部都必須有概述注釋信息。
2、文件和函數(shù)的概述注釋應縮進1個空格。
3、文件概述注釋信息必須包括以下內容:
(1) 文件名
(2) 屬性
(3) 創(chuàng)建人
(4) 創(chuàng)建日期
4、函數(shù)概述注釋信息必須包括以下內容:
(1) 功能
(2) 輸入?yún)?shù),標明意義和類型
(3) 返回值,標明意義和類型
(4) 作者
(5) 日期
四、程序書寫格式
3.1 空格、空行與縮進
1、在操作符的前后必須使用空格。
2、在分隔數(shù)組下標和函數(shù)參數(shù)的逗號后面必須添上空格。
3、一個程序段上下必須使用空行。
4、變量定義部分與程序語句之間必須使用空行。
5、利用縮進來顯示程序的邏輯結構,縮進量一致并以Tab鍵為單位,定義Tab鍵為4個空格字符。
6、以下情況使用縮進:
(1) Function - End Function
(2) Sub - End Sub
(3) Do While - Loop
(4) If - Else - End If
(5) Select Case - End Select
(6) For - Next
3.2 SQL語句書寫規(guī)范
1、寫SQL語句時,關鍵字必須使用大寫(如SELECT、WHERE等),
數(shù)據(jù)元素(表、字段、視圖等)必須按照數(shù)據(jù)字典書寫;
2、把每個SQL子語句分開放在不同的行中。
3.3 其它規(guī)范
1、不允許使用純粹的不帶語意的數(shù)字或字符串。比如:for index=1 to 7;
而應該使用定義過的常量,比如:for index=1 to NUM_DAYS_IN_WEEK。
五 編程準則
4.1 變量使用規(guī)范
1、不允許隨意定義全局變量。
2、一個變量只能有一個用途;變量的用途必須和變量的名稱保持一致。
3、所有變量都必須在類和函數(shù)最前面定義,并分類排列。
4.2 數(shù)據(jù)庫操作規(guī)范
1、查找數(shù)據(jù)庫表或視圖時,只能取出確實需要的那些字段。
2、使用無關子查詢,而不要使用關聯(lián)子查詢。
3、清楚明白地使用列名,而不能使用列的序號。
4.3 對象使用規(guī)范
1、盡可能晚地創(chuàng)建對象,并且盡可能早地釋放它。
4.4 模塊設計原則
1、不允許隨意定義公用的函數(shù)和類。
2、函數(shù)功能單一,不允許一個函數(shù)實現(xiàn)兩個及兩個以上的功能。
3、不能在函數(shù)內部使用全局變量,如要使用全局變量,應轉化為局部變量。
4、函數(shù)與函數(shù)之間只允許存在包含關系,而不允許存在交叉關系。
即兩者之間只存在單方向的調用與被調用,不存在雙向的調用與被調用。
附1:主要名詞/動詞漢英對照表
附件 Attach
一覽 List
詳細 Detail
編輯 Edit
修改 Modify
變更 Alter
附2:縮寫標準
常用縮寫
addr address(地址)
arr array(數(shù)組)
BG background(背景)
cate category(種類)
corp corporation(公司)
Func function(函數(shù))
gov government(政府)
img image(圖像)
inc include(包括、包含)
Info information(信息)
Max Minimum(最小值)
Min Maximum(最大值)
Msg message(消息)
Num Number(數(shù)目)
No Number(號碼)
pic picture(圖畫)
proj project(工程)
pwd password(密碼、口令)
subj subject(主題)
sys system(系統(tǒng))
前綴縮寫
1、類型前綴
類型名稱 縮寫 示例
boolean bln blnFound
byte byt bytRasterData
datetime dtm dtmStart
double dbl dblTolerance
error err errOrderNum
integer int intQuantity
long lng lngDistance
object obj objCurrent
single sng sngAverage
string str strFirstName
dataset ds
datatable dt
datarow dr
2、控件前綴
控件名 縮寫 示例
下拉列表(DropDownList) ddl
按鈕(Button) btn
文本框(TextBox) txt
復選框(CheckBox) chk
單選按鈕(RadioButton) rdb
列表框(listBox) lst
標簽(Label) lbl
圖像(Image) img