国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

C#編碼規(guī)范

2024-07-21 02:27:12
字體:
供稿:網(wǎng)友

一、類型級(jí)單位的命名

1、類。

以class聲明的類,都必須以名詞或名詞短語命名,體現(xiàn)類的作用。如:

class indicator

當(dāng)類是一個(gè)特性(attribute)時(shí),以attribute結(jié)尾,當(dāng)類是一個(gè)異常(exception)時(shí),以exception結(jié)尾:

class colorsetexception

class causeexceptionattribute

當(dāng)類只需有一個(gè)對(duì)象實(shí)例(全局對(duì)象,比如application等),必須以class結(jié)尾,如

class screenclass

class systemclass

當(dāng)類只用于作為其他類的基類,根據(jù)情況,以base結(jié)尾:

mustinherit class indicatorbase

如果定義的類是一個(gè)窗體,那么名字的后面必須加后綴form,如果是web窗體,必須加后綴page:

class printform : inherits form * windows窗體

class startpage : inherits page * web窗體

2、枚舉和結(jié)構(gòu)

同樣必須以名詞或名詞短語命名。最好體現(xiàn)枚舉或結(jié)構(gòu)的特點(diǎn),如:

enum colorbuttons 以復(fù)數(shù)結(jié)尾,表明這是一個(gè)枚舉

structure customerinforecord 以record結(jié)尾,表明這是一個(gè)結(jié)構(gòu)體

3、委派類型

普通的委派類型以描述動(dòng)作的名詞命名,以體現(xiàn)委派類型實(shí)例的功能:

delegate sub dataseeker (byval seekstring as string)

用于事件處理的委派類型,必須以eventhandler結(jié)尾,如:

delegate sub datachangedeventhandler (byval sender as object, byval e as datachangedeventargs)

4、接口

與其他類型不同,接口必須要由i作為前綴,并用形容詞命名,突出表現(xiàn)實(shí)現(xiàn)接口的類將具有什么能力:

interface isortable

5、模塊

模塊不是類型,他的名稱除了必須以名詞命名外,必須加以后綴module:

module sharedfunctionsmodule

上述所有規(guī)則的共同特點(diǎn)是,每個(gè)組成名稱的詞語都必須是大寫開頭,禁止完全大寫或小寫的名稱。

二、方法和屬性的命名

1、方法

無論是函數(shù)還是子程序,方法都必須以動(dòng)詞或動(dòng)詞短語命名。無需區(qū)分函數(shù)和子程序,也無需指明返回類型。

sub open(byval commandstring as string)

function setcopynumber(byval copynumber as integer)

參數(shù)需要指明byval還是byref,這一點(diǎn)寫起來會(huì)讓程序邊長,但非常必要。如果沒有特別情況,都使用byval。參數(shù)的命名方法,參考后面“變量的命名方法”。需要重載的方法,一般不寫overloads,根據(jù)需要編寫重載的方法。

2、屬性

原則上,字段(field)是不能公開的,要訪問字段的值,一般使用屬性。屬性以簡潔清晰的名詞命名:

property concentration as single

property customer as customertypes

3、事件

事件是特殊的屬性,只能在事件處理上下文中使用。命名的原則一般是動(dòng)詞或動(dòng)詞的分詞,通過時(shí)態(tài)表明事件發(fā)生的時(shí)間:

event click as clickeventhandler

event colorchanged as colorchangedeventhangler

三、變量和常數(shù)

常數(shù)以表明常數(shù)意義的名詞命名,一般不區(qū)分常數(shù)的類型:

const defaultconcentration as single = 0.01

在嚴(yán)格要求的代碼中,常數(shù)以c_開頭,如c_defaultconcentration,但最好不要用它,它會(huì)帶來輸入困難。

普通類型的變量,只要用有意義的名字命名即可,不可使用簡稱和無意義的名稱諸如a,x1等,下面給出了良好的例子:

dim index as integer

dim nextmonthexpenditure as decimal

dim customername as string

不能起太長的名字,應(yīng)該盡量簡潔,如下面的例子:

dim variableusedtostoresysteminformation as string * 錯(cuò)誤,太復(fù)雜了

dim systeminformation as string * 正確,簡單明了

dim sysinfo as string * 錯(cuò)誤,過于簡單

特殊情況可以考慮一個(gè)字母的變量:

dim g as graphic

對(duì)于控件,應(yīng)該指明控件的類型,方法是直接在變量后面加以類名:

friend withevents 下一頁:不該用generics實(shí)現(xiàn)abstract factory的理由 button as button * 按鈕

friend withevents colorchoicerpanel as panel * 面版

friend withevents cardfileopendialog as fileopendialog * 文件打開對(duì)話框

等等,無需規(guī)定某種類型的變量的前綴,只需把類型寫在后面就行了,試對(duì)比下列代碼:

btncancel.text = "&cancel"

cancelbutton.text = "&cancel"

顯然后者更能使閱讀者明白變量的類型是一個(gè)按鈕。

四、標(biāo)簽

標(biāo)簽就是用于goto跳轉(zhuǎn)的代碼標(biāo)識(shí),由于goto并不推薦使用,所以標(biāo)簽的使用也比較苛刻。標(biāo)簽必須全部大寫,中間的空格用下劃線_代替,而且應(yīng)該以_開頭,比如:

_a_label_example:

如此定義標(biāo)簽是為了與其他代碼元素充分區(qū)別。

五、名字空間

通常,一個(gè)工程使用一個(gè)名字空間,通常不需要用namespace語句,而是在工程選項(xiàng)的“root namespace”中指定,使用根名字空間可以使代碼更加整齊,容易修改,這一點(diǎn)是vb十足的優(yōu)點(diǎn)。名字空間的語法是:

公司名.產(chǎn)品名[.組件名的復(fù)數(shù)]

如:

namespace ninputer.virtualscreen

namespace ninputer.cardeditor.customecontrols

隨便起一個(gè)名字空間的名字絕對(duì)不是一個(gè)好主意,一定要遵守上述規(guī)定。

六、注釋

注釋的規(guī)則繁多,這里僅提到其中一點(diǎn):正常的注釋以 *開頭,單獨(dú)的 只用來注釋暫時(shí)不用的代碼

* 這是普通的注釋

* 這段代碼在調(diào)試正確后加入

if usehighspeed(g) = true then ....

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 大同县| 昌邑市| 西平县| 长沙县| 拉萨市| 宁晋县| 常熟市| 封开县| 离岛区| 普兰店市| 德江县| 新营市| 红原县| 出国| 广饶县| 同德县| 浮山县| 平顶山市| 隆安县| 中卫市| 宝坻区| 射阳县| 砀山县| 南通市| 乌拉特前旗| 苏尼特右旗| 西青区| 青河县| 墨竹工卡县| 迁安市| 广元市| 永济市| 安多县| 阳谷县| 阿拉善左旗| 于都县| 阳山县| 青田县| 祁阳县| 沅江市| 万安县|