最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.Net 項(xiàng)目代碼風(fēng)格要求小結(jié)

 更新時(shí)間:2015年12月19日 14:13:31   作者:Jimmy Zhang  
代碼風(fēng)格沒(méi)有正確與否,重要的是整齊劃一,這是我擬的一份《.Net 項(xiàng)目代碼風(fēng)格要求》,供大家參考

PDF版下載:項(xiàng)目代碼風(fēng)格要求V1.0.pdf

代碼風(fēng)格沒(méi)有正確與否,重要的是整齊劃一,這是我擬的一份《.Net 項(xiàng)目代碼風(fēng)格要求》,供大家參考。

1. C# 代碼風(fēng)格要求1.1注釋

類(lèi)型、屬性、事件、方法、方法參數(shù),根據(jù)需要添加注釋。

如果類(lèi)型、屬性、事件、方法、方法參數(shù)的名稱(chēng)已經(jīng)是自解釋了,不需要加注釋?zhuān)环駝t需要添加注釋。

當(dāng)添加注釋時(shí),添加方式如下圖所示:

1.2 類(lèi)型(類(lèi)、結(jié)構(gòu)、委托、接口)、字段、屬性、方法、事件的命名

優(yōu)先考慮英文,如果英文沒(méi)有合適的單詞描述,可以使用拼音,使用中文是不符合要求的。

唯一可以使用中文的地方是枚舉的枚舉項(xiàng),枚舉項(xiàng)實(shí)際已經(jīng)不屬于本節(jié)標(biāo)題的范疇了。這里只是放到一起說(shuō)明,如下圖所示:

1.3 不使用縮寫(xiě)

所有類(lèi)型、方法、參數(shù)、變量的命名不得使用縮寫(xiě),包括大家熟知的縮寫(xiě),例如msg。

1.4 代碼使用半展開(kāi)

第一步,打開(kāi)Visual Studio,進(jìn)入“工具”,“選項(xiàng)...”,如下圖所示:

第二步,進(jìn)入“文本編輯器”,“C#”,“格式設(shè)置”,“新行”,取消掉右側(cè)所有復(fù)選框中的對(duì)號(hào),如下圖所示:

第三步,點(diǎn)擊“確定”,完成設(shè)置。

1.5 使用Tab作為縮進(jìn),并設(shè)置縮進(jìn)大小為4

第一步,打開(kāi)Visual Studio,進(jìn)入“工具”,“選項(xiàng)...”,如下圖所示:

第二步,進(jìn)入“文本編輯器”,“C#”,“制表符”,如下圖所示,設(shè)置制表符。

第三步,點(diǎn)擊“確定”,完成設(shè)置。

1.6 一個(gè).cs源文件至多定義兩個(gè)類(lèi)型

如果兩個(gè)類(lèi)型的關(guān)系是緊密相關(guān)的,比如 產(chǎn)品、產(chǎn)品類(lèi)型,此時(shí)Product類(lèi),和ProductType枚舉可以定義在同一個(gè)Product.cs文件中。

但不能在一個(gè).cs文件中出現(xiàn)兩個(gè)不相關(guān)的類(lèi)型定義,例如將 Product類(lèi)和Reseller類(lèi)(分銷(xiāo)商)定義在一個(gè)BasicInfo.cs文件中。

1.7 類(lèi)型名稱(chēng)和源文件名稱(chēng)必須一致

當(dāng)類(lèi)型命名為Product時(shí),其源文件命名只能是Product.cs。

1.8 所有命名空間、類(lèi)型名稱(chēng)使用Pascal風(fēng)格(單詞首字母大寫(xiě))

如下圖所示,紅色標(biāo)記的為使用Pascal風(fēng)格的類(lèi)型:

注意ProductType是私有類(lèi)型,不管類(lèi)型是公有的還是私有的,其命名總是采用Pascal風(fēng)格。

1.9 本地變量、方法參數(shù)名稱(chēng)使用Camel風(fēng)格(首字母小寫(xiě),其后每個(gè)單詞的首字母大寫(xiě))

紅色標(biāo)記的為使用Camel風(fēng)格的變量或者方法參數(shù):

1.10 私有方法、受保護(hù)方法,仍使用Pascal風(fēng)格命名

示例代碼如下:

1.11 如果if語(yǔ)句內(nèi)容只有一行,可以不加花括號(hào),但是必須和if語(yǔ)句位于同一行

范例1.9 中的if判斷實(shí)際上與下面的語(yǔ)句是等效的:

1.12 調(diào)用類(lèi)型內(nèi)部其他成員,需加this;調(diào)用父類(lèi)成員,需加base

示例代碼如下:

1.13 類(lèi)型內(nèi)部的私有和受保護(hù)字段,使用Camel風(fēng)格命名,但加“_”前綴

代碼示例如下:

1.14 不能出現(xiàn)公有字段

如果需要公有字段,使用屬性進(jìn)行包裝。

1.15 類(lèi)型成員的排列順序

類(lèi)型成員的排列順序自上而下依次為:

字段:私有字段、受保護(hù)字段

屬性:私有屬性、受保護(hù)屬性、公有屬性

事件:私有事件、受保護(hù)事件、公有事件

構(gòu)造函數(shù):參數(shù)數(shù)量最多的構(gòu)造函數(shù),參數(shù)數(shù)量中等的構(gòu)造函數(shù),參數(shù)數(shù)量最少的構(gòu)造函數(shù)

方法:重載方法的排列順序與構(gòu)造函數(shù)相同,從參數(shù)數(shù)量最多往下至參數(shù)最少。

1.16 委托和事件的命名

委托以EventHandler作為后綴命名,例如 SalesOutEventHandler。

事件以其對(duì)應(yīng)的委托類(lèi)型,去掉EventHandler后綴,并加上On前綴構(gòu)成。

例如,對(duì)于SalesOutEventHandler委托類(lèi)型的事件,其事件名稱(chēng)為:OnSalesOut。

示例代碼如下:

1.17 返回bool類(lèi)型的方法、屬性的命名

如果方法返回的類(lèi)型為bool類(lèi)型,則其前綴為Is、Can或者 Try,例如:

1.18 常見(jiàn)集合類(lèi)型后綴命名

凡符合下表所列的集合類(lèi)型,應(yīng)添加相應(yīng)的后綴。

說(shuō)明 后綴 示例
數(shù)組 Array int[] productArray
列表 List List<Product> productList
DataTable/HashTable Table HashTable productTable
字典 Dictionary Dictionay<string,string> productDictionary
EF中的DbSet /DataSet Set DbSet<Product> productSet

1.19 常見(jiàn)后綴命名

凡符合下表所列的局部變量、方法參數(shù)、字段、屬性,均需添加相應(yīng)的后綴。

說(shuō)明 后綴 示例 示例說(shuō)明
費(fèi)用相關(guān) Cost ShipCost 運(yùn)輸費(fèi)
價(jià)格相關(guān) Price ProductUnitPrice 產(chǎn)品單價(jià)
消息相關(guān) Message(棄用Note) SuccessMessage 成功消息
日期相關(guān) Date(棄用Time) OrderDate 下單日期
計(jì)數(shù)、數(shù)量相關(guān) Count(棄用Time) LoginCount 登錄次數(shù)
鏈接地址相關(guān) Url BlogUrl 博客鏈接
圖片相關(guān) Image SignImage 簽名圖片
金額相關(guān) Amount PrepaidAmount 預(yù)付款
點(diǎn)數(shù)、積分相關(guān) Point MemberPoint 會(huì)員積分
記錄、日志相關(guān) Record(棄用Log) ErrorRecord 錯(cuò)誤記錄
配置相關(guān) Config DataBaseConfig 數(shù)據(jù)庫(kù)配置
狀態(tài)相關(guān) Status OrderStatus 訂單狀態(tài)
模式、方式相關(guān) Mode OpenMode 打開(kāi)方式
種類(lèi)相關(guān) Category / Type 二選一 UserCategory 用戶(hù)種類(lèi)
工廠(chǎng)類(lèi)相關(guān) Factory ConnectionFactory 連接工廠(chǎng)
啟用相關(guān) Enabled ExportEnabled 開(kāi)啟導(dǎo)出
流相關(guān) Stream UploadStream 上傳流
讀取器相關(guān) Reader ExcelReader Excel讀取器
寫(xiě)入器相關(guān) Writer ExcelWriter Excel寫(xiě)入器
適配器相關(guān) Adapter IntroOPAdapter IntroOP適配器
提供器相關(guān) Provider MemebershipProvider 會(huì)員信息提供器
包裝器相關(guān) Wrapper ProductWrapper Product包裝器
連接相關(guān) Connection ExcelConnection Excel連接

1.20 常見(jiàn)類(lèi)型命名

凡存在下表中的類(lèi)型,需采用下表指定的名稱(chēng)命名。

類(lèi)型 命名 類(lèi)型 命名
客戶(hù) Customer 分銷(xiāo)商 Reseller
零售商 Retailer 經(jīng)銷(xiāo)商/批發(fā)商 Dealer
用戶(hù) UserInfo(User為數(shù)據(jù)庫(kù)關(guān)鍵字) 訂單 OrderInfo(Order為數(shù)據(jù)庫(kù)關(guān)鍵字)
供應(yīng)商 Supplier 管理員 Admin
密碼 Password 會(huì)員 Member
評(píng)論 Remark(棄用Comment) 文章 Article
新聞 News 發(fā)票 Invoice
導(dǎo)入 Import 導(dǎo)出 Export
公司、企業(yè) Company(棄用Enterprise) 產(chǎn)品 Product
省份 Province 城市 City
區(qū)縣 District 地址 Address
角色 Role(棄用Group) 權(quán)限 Authority(棄用Permission)
倉(cāng)庫(kù) Warehouse 工廠(chǎng) Plant
登錄 Login(棄用SignIn) 登出 LogOut(棄用SignOut)
創(chuàng)建 Create(棄用Add) 編輯 Edit
更新 Update 刪除 Remove(棄用Delete)
照片 Photo 圖片 Image

1.21 常見(jiàn)字段、屬性命名

字段、屬性種類(lèi)比較繁雜,因此僅列出最常用的幾項(xiàng)。

類(lèi)型 名稱(chēng) 類(lèi)型 名稱(chēng)
Id(int型) Id(“d”小寫(xiě),棄用ID) GuidId(Guid型) Id
Name 名稱(chēng) Title 標(biāo)題
Remark 備注、描述(棄用Memo、Description) Category 種類(lèi)(棄用Class、Type)
Linkman 聯(lián)系人    

2. XHTML 代碼風(fēng)格要求2.1 如果XHTML標(biāo)記有層次,那么代碼也要有層次

下面是書(shū)寫(xiě)符合要求的例子:

下面是書(shū)寫(xiě) 不符合要求 的例子:

2.2 所有標(biāo)記必須閉合

示例代碼如下:

2.3 如果標(biāo)記中間代碼超過(guò)20行,則應(yīng)在標(biāo)記末尾加注標(biāo)識(shí)

標(biāo)注方式如下:

3. CSS 代碼風(fēng)格要求3.1 代碼使用半展開(kāi)

設(shè)置方法參考1.4節(jié)。

3.2 使用Tab作為縮進(jìn),并設(shè)置縮進(jìn)大小為4

設(shè)置方法參考1.5節(jié)。

3.3 代碼注釋

注釋主要說(shuō)明該樣式應(yīng)用于頁(yè)面的哪個(gè)部分,而非說(shuō)明樣式的應(yīng)用效果,代碼注釋風(fēng)格如下所示:

3.4 代碼編寫(xiě)

每一個(gè)樣式設(shè)置必須獨(dú)占一行,不能位于同一行,下面是符合要求的寫(xiě)法:

下面是 不符合要求 的寫(xiě)法:

3.5 嵌入式樣式的比例不超過(guò)樣式表代碼總量的10%

嵌入式樣式為直接寫(xiě)在HTML標(biāo)記內(nèi)部的樣式,如下圖所示:

3.6 內(nèi)聯(lián)式樣式的比例不超過(guò)樣式表代碼總量的30%

內(nèi)聯(lián)式樣式為寫(xiě)在<head></head>中的樣式,如下圖所示:

內(nèi)聯(lián)式樣式,不能 寫(xiě)在<body></body>之間。

3.7 外聯(lián)式樣式表的比例不少于樣式表代碼總量的60%

外聯(lián)式樣式表為寫(xiě)在.css文件中的樣式,通過(guò)link引入到XHTML頁(yè)面中,如下圖所示:

4. JavaScript 代碼風(fēng)格要求4.1 代碼使用半展開(kāi)

設(shè)置方法參考1.4節(jié)。

4.2 使用Tab作為縮進(jìn),并設(shè)置縮進(jìn)大小為4

設(shè)置方法參考1.5節(jié)。

4.3 代碼注釋

代碼注釋需要說(shuō)明“函數(shù)功能”、“入口參數(shù)”、“返回值”,注釋范例如下:

其中第一行說(shuō)明函數(shù)功能;第二行說(shuō)明入口參數(shù);最后一行說(shuō)明返回值

4.4 不得出現(xiàn)內(nèi)嵌式代碼

內(nèi)嵌式代碼是指寫(xiě)在XHTML標(biāo)記中的JavaScript代碼,下面的寫(xiě)法是 不符合要求 的:

4.5 內(nèi)聯(lián)式代碼占JavaScript的總量不得超過(guò)40%

內(nèi)聯(lián)式代碼是指寫(xiě)在<head />或者<body />之間的代碼:

4.6 外聯(lián)式代碼占JavaScript的總量至少為60%

外聯(lián)式代碼指寫(xiě)在單獨(dú)的.js文件中,然后通過(guò)script標(biāo)記連接到XHTML頁(yè)面中的代碼。


感謝閱讀,希望這篇文章能給你帶來(lái)幫助!

相關(guān)文章

最新評(píng)論

庆阳市| 凤冈县| 平顺县| 浑源县| 福安市| 昔阳县| 漯河市| 邻水| 道真| 左云县| 车致| 浙江省| 太仓市| 潜山县| 德安县| 尚志市| 田林县| 射阳县| 申扎县| 齐齐哈尔市| 乌审旗| 孟村| 太康县| 万年县| 垣曲县| 阿拉尔市| 龙门县| 蓬溪县| 五常市| 宝鸡市| 大城县| 娄烦县| 九江市| 大港区| 海原县| 合阳县| 保靖县| 清远市| 东丽区| 宾阳县| 西乌珠穆沁旗|