資源描述:
《程序代碼編寫規(guī)范》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、XK-DN-2000-10-11-12請在這里輸入公司名稱文檔編號產(chǎn)品版本密級XK-DN-2000-10-11-12V1.0產(chǎn)品名稱:共頁程序編寫規(guī)范及約定(僅供內(nèi)部使用)文檔作者:_______________日期:___/___/___開發(fā)/測試經(jīng)理:_______________日期:___/___/___項目經(jīng)理:_______________日期:___/___/___請在這里輸入公司名稱版權(quán)所有不得復(fù)制XK-DN-2000-10-11-12目錄程序編寫規(guī)范及約定31編寫目的32代碼編寫風(fēng)格32.1單元風(fēng)格32.2語句風(fēng)格33命名規(guī)則33.1
2、命名約定33.1.1標(biāo)志符33.1.2類class33.1.3枚舉類型enum43.1.4委托delegate43.1.5常量const43.1.6接口interface43.1.7方法function43.1.8命名空間namespace43.1.9參數(shù)43.1.10局部變量53.1.11數(shù)據(jù)成員53.1.12自定義異常類53.1.13命名縮寫53.1.14數(shù)據(jù)庫命名53.2代碼編寫命名規(guī)范63.3界面常用控件命名約定63.4文件命名規(guī)范73.4.1文檔文件命名73.4.2配置文件命名73.4.3程序文件命名7XK-DN-2000-10-11-12程
3、序編寫規(guī)范及約定1編寫目的為了使編寫代碼具有可讀性、可理解性、可維護性,對程序編寫人員代碼實行統(tǒng)一風(fēng)格,使得程序代碼能夠以名稱反映含義、以形式反映結(jié)構(gòu)。此文檔可供程序代碼編寫人員及代碼維護人員使用。2代碼編寫風(fēng)格2.1單元風(fēng)格2.2語句風(fēng)格3命名規(guī)則3.1命名約定Pascal和Camel命名約定:編程的命名方式主要有Pascal和Camel兩種(Pascal:每個單詞的首字母大寫,例如ProductType;Camel:首個單詞的首字母小寫,其余單詞的首字母大寫,例如productType)3.1.1標(biāo)志符?規(guī)則:Pascal、Camel?實例與描述:
4、例子說明3.1.2類class?規(guī)則:Pascal?實例與描述:ApplicationXK-DN-2000-10-11-121.1.1枚舉類型enum?規(guī)則:Pascal?實例與描述:記住,是以Pascal命名,切勿包含Enum,否則FXCop會拋出Issue1.1.2委托delegate?規(guī)則:Pascal?實例與描述:以Pascal命名,不以任何特殊字符串區(qū)別于類名、函數(shù)名1.1.3常量const?規(guī)則:全部大寫?實例與描述:全部大寫,單詞間以下劃線隔開1.1.4接口interface?規(guī)則:Pascal?實例與描述:IDisposable注:總是
5、以I前綴開始,后接Pascal命名1.1.5方法function?規(guī)則:Pascal?實例與描述:ToString1.1.6命名空間namespace規(guī)則:Pascal實例與描述:以.分隔,當(dāng)每一個限定詞均為Pascal命名方式,比如:usingExcelQuicker.Framework1.1.7參數(shù)?規(guī)則:Camel?實例與描述:首字母小寫?XK-DN-2000-10-11-121.1.1局部變量?規(guī)則:Camel?實例與描述:也可以加入類型標(biāo)識符,比如對于System.String類型,聲明變量是以str開頭,stringstrSQL=strin
6、g.Empty;1.1.2數(shù)據(jù)成員規(guī)則:Camel?以m開頭+Pascal命名實例與描述:如mProductType(m意味member)屬性1.1.3自定義異常類自定義異常類以Exception結(jié)尾,并且在類名中能清楚的描述出該異常的原因。比如NotFoundFileException,描述出了某個實體(文件、內(nèi)存區(qū)域等)無法被找到。1.1.4命名縮寫在一般情況下,不推薦縮寫命名,不要擔(dān)心變量命名長,長的變量名能使變量的意義更加清晰,其實從長變量名的負面作用三,因為Ctrl+C和Ctrl+V加上在VS中的智能感知,其負面追用已經(jīng)很小。變量命名的原則是
7、,盡最大努力讓其他人在看到我們的變量/函數(shù)/…等的第一時間,大概能猜出它是做什么的。比如:intproductTypeCount=0;//我們在第一時間就能知道它是記錄產(chǎn)品的數(shù)量的變量而對于糟糕的命名方式:intprodTypeCount=0;//它是productTypeCount的簡寫,我們一部分人也許知道prod是product的縮寫,但是每人能保證所有的人都知道它。我個人認為:最優(yōu)秀的代碼它本身就是注釋。作為一流的程序員。并不僅僅實現(xiàn)功能,而是要讓我們的代碼更加優(yōu)美,具備讓他人維護或今后擴充的能力。作為現(xiàn)在的業(yè)務(wù)系統(tǒng),其門檻的準(zhǔn)入水平已大大降低
8、,實現(xiàn)功能上的需求已沒有什么難度,但是高手和菜鳥的區(qū)別在于,高手的代碼通俗易懂,在整個編碼的過