自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳細(xì)介紹C#命名規(guī)范

開(kāi)發(fā) 后端
本文的C#命名規(guī)范主要基于微軟的標(biāo)準(zhǔn),另外加上實(shí)際開(kāi)發(fā)的一些具體經(jīng)驗(yàn)。它還在不斷的維護(hù)和完善,你可以針對(duì)不同項(xiàng)目的要求,做相應(yīng)的調(diào)整。

一個(gè)好的名字能夠讓你的程序更加好懂,別人一看到這個(gè)名字,就能夠猜到你在做什么,大量好的名字離不開(kāi)好的命名規(guī)范,而一個(gè)好的命名規(guī)范要做到兩點(diǎn):
◆合理。即容易被大家接受和使用。從這個(gè)意義上來(lái)說(shuō),好的命名規(guī)范不應(yīng)該太長(zhǎng),它應(yīng)該讓你花上10分鐘就能看完,寫(xiě)過(guò)幾段代碼就能熟悉。
◆風(fēng)格一致。即前后一致,例外的情況少。

符合以上兩點(diǎn)的C#命名規(guī)范就是好的,雖然它們具體的規(guī)則可能不同。有的時(shí)候,命名規(guī)范體現(xiàn)了編程思想,比如:對(duì)于接口,在.NET中,一般要求以“I”開(kāi)頭,在Java中沒(méi)有這個(gè)要求,原因是Java認(rèn)為接口和抽象類(lèi)往往可以轉(zhuǎn)化,比如:在項(xiàng)目初期,可能定義的是接口,而在后面,可能把它改成抽象類(lèi),如果名稱一致,就避免了名稱的改動(dòng)。

另外,不同的命名規(guī)范也體現(xiàn)了程序發(fā)展歷程。比如:匈牙利命名法要求類(lèi)型前綴,故在C++、 VB、PB一般都會(huì)大量出現(xiàn)類(lèi)型前綴,像intAmount, strName等。而現(xiàn)在一般沒(méi)有這個(gè)要求,原因是:

1.有些類(lèi)型可能會(huì)做修改,比如Int16變成Int32.另外對(duì)于一些動(dòng)態(tài)語(yǔ)言(Python、 JavaScript)來(lái)說(shuō),其類(lèi)型是變化的,編譯時(shí)無(wú)法確定;

2.現(xiàn)在的開(kāi)發(fā)環(huán)境更加的友好,即使在開(kāi)發(fā)的時(shí)候,你也很容易知道變量的類(lèi)型(只要鼠標(biāo)移上去)。

本文的C#命名規(guī)范主要基于微軟的標(biāo)準(zhǔn),另外加上實(shí)際開(kāi)發(fā)的一些具體經(jīng)驗(yàn)。它還在不斷的維護(hù)和完善,你可以針對(duì)不同項(xiàng)目的要求,做相應(yīng)的調(diào)整。

有意義的,描述性的詞語(yǔ)來(lái)命名。能夠一眼看出它作什么。別使用會(huì)引起誤解的名字。如果名字一目了然,就無(wú)需用文檔來(lái)解釋方法的功能了

1. 除約定俗成的,別用縮寫(xiě)。用name, address, salary等代替 nam, addr, sal

2. 除用于循環(huán),別使用單個(gè)字母的變量象i, n, x 等。 而要使用 index, temp等。

  1. for ( int i = 0; i < count; i++ ){   
  2. ……  

其他習(xí)慣除了界面控件外,不要使用類(lèi)型前綴。比如:使用名稱amount,而不是 intAmount;
◆類(lèi):使用名詞、名詞短語(yǔ)命名。比如:publlic class FileStream;
◆方法:使用動(dòng)詞、動(dòng)詞短語(yǔ)開(kāi)始。比如:CreateUser(), RemoveAt()等;
◆接口:以 I 開(kāi)始,后面加上名詞、名詞短語(yǔ)、形容詞命名。比如:IDisposable;
◆常量:所有單詞大寫(xiě),多個(gè)單詞之間用 "_" 隔開(kāi)
◆命名空間:

1.基本格式:

CompanyName/ProjectName.TechnologyName[.Feature][.Design]
a)CompanyName/ProjectName:公司名、項(xiàng)目名稱或產(chǎn)品名稱;
b)TechnologyName:穩(wěn)定的、公認(rèn)的技術(shù)名稱或架構(gòu)層次名稱;
c)[.Feature][.Design]:可選的功能與設(shè)計(jì);

例如:

  1. //微軟公司的Web開(kāi)發(fā)中的UI中的Design  
  2. namespace Microsoft.Web.UI.Design  
  3. //西門(mén)子報(bào)價(jià)項(xiàng)目中業(yè)務(wù)邏輯層中的項(xiàng)目管理  
  4. namespace SiemensQuotation.BusinessRules.ProjectManagement 

2.幾個(gè)規(guī)則
a)嵌套的命名空間應(yīng)當(dāng)有依賴關(guān)系。例如:System.Web.UI.Design 中的類(lèi)依賴于 System.Web.UI 中的類(lèi),而不能相反。
b)命名空間和類(lèi)不能使用同樣的名字。例如,命名空間Debug下最好不要又一個(gè)類(lèi)名為Debug.
c)如果公司名、項(xiàng)目名稱或產(chǎn)品名稱太長(zhǎng)的話,可以用縮寫(xiě)(且全部大寫(xiě))。

控件命名控件的名稱中需要加上前綴,之所以這樣做是為了區(qū)分界面的控件和普通的對(duì)象,由于界面修改往往非常頻繁,區(qū)分開(kāi)來(lái)能使你更快速的找到控件,從而修改界面。舉一個(gè)例子:

界面有10個(gè)TextBox、10個(gè)Label.一個(gè)TextBox對(duì)應(yīng)一個(gè)Label,為了完成讀寫(xiě),你至少要有20條語(yǔ)句來(lái)從控件進(jìn)行取、賦值操作,如果有前綴的話,輸入this.txt,你就幾乎馬上能找到這個(gè)控件。反之,如果沒(méi)有前綴,由于窗口或頁(yè)面對(duì)象擁有大量的屬性和變量(>100 個(gè)),你將花費(fèi)大量時(shí)間來(lái)查找。另外一個(gè)TextBox對(duì)應(yīng)一個(gè)Label(一個(gè)代表值,一個(gè)代表名稱),它們往往指同一樣事物,如果有前綴,就很容易區(qū)分這兩個(gè)控件。以上介紹C#命名規(guī)范。

【編輯推薦】

  1. C#結(jié)構(gòu)體的特點(diǎn)淺析
  2. 介紹C#窗體拖動(dòng)事件
  3. C#讀取Excel遇到無(wú)法讀取的解決方法
  4. 概述C#.NET操作XML
  5. C#基礎(chǔ)概念學(xué)習(xí)筆記
責(zé)任編輯:佚名 來(lái)源: IT168
相關(guān)推薦

2009-09-01 15:08:07

C#命名規(guī)范

2009-08-21 08:52:40

C#語(yǔ)言命名

2009-08-27 16:30:08

C#編程命名規(guī)范

2009-07-31 18:18:33

Camel命名法C#命名規(guī)范

2009-08-12 15:34:40

C# DBNull

2009-08-10 16:30:56

C# BitmapDa

2009-08-14 17:04:50

C#類(lèi)型系統(tǒng)

2009-08-21 15:16:23

C#使用指針

2009-08-26 17:31:59

C# const常量

2009-08-24 18:21:23

C# ListView

2009-08-03 18:49:17

C#和Java

2009-08-20 15:26:42

C#循環(huán)語(yǔ)句

2009-08-21 09:23:11

C# GDI+

2009-08-07 16:10:20

C#調(diào)用API

2009-05-22 11:01:53

C++JavaC#

2009-08-13 15:40:28

C#基礎(chǔ)知識(shí)

2009-08-27 17:31:44

C#創(chuàng)建Windows

2011-06-08 13:35:18

C#數(shù)據(jù)類(lèi)型

2009-08-27 14:32:15

C#編寫(xiě)ActiveX

2009-08-25 17:28:23

C#創(chuàng)建DataSet
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)