C_命名规范

  • 格式:doc
  • 大小:97.00 KB
  • 文档页数:6

C#命名规范

大家都知道写程序应该有个好的命名规范,为了工作方便,贴出来。

1 命名规范

数据类型 数据类型简写 标准命名举例

Connection con conNorthwind

Command cmd cmdReturnProducts

Parameter parm parmProductID

DataAdapter dad dadProducts

DataReader Dtr DtrProducts

DataSet Dst DstNorthWind

DataTable dtbl DtblProduct

DataRow drow drowRow98

DataColumn dcol DcolProductID

DataRelation drel DrelMasterDetail

DataView dvw DvwFilteredProducts

2 WinForm Control 命名规范

数据类型 数据类型简写 标准命名举例

Label lbl lblMessage

LinkLabel llbl llblToday

Button btn btnSave

TextBox txt txtName

MainMenu mmnu mmnuFile

CheckBox chk chkStock

RadioButton rbtn rbtnSelected

GroupBox gbx gbxMain

PictureBox pic picImage

Panel pnl pnlBody

DataGrid dgrd dgrdView

ListBox lst lstProducts

CheckedListBox clst clstChecked

ComboBox cbo cboMenu

ListView lvw lvwBrowser TreeView tvw tvwType

TabControl tctl tctlSelected

DateTimePicker dtp dtpStartDate

HscrollBar hsb hsbImage

VscrollBar vsb vsbImage

Timer tmr tmrCount

ImageList ilst ilstImage

ToolBar tlb tlbManage

StatusBar stb stbFootPrint

OpenFileDialog odlg odlgFile

SaveFileDialog sdlg sdlgSave

FoldBrowserDialog fbdlg fgdlgBrowser

FontDialog fdlg fdlgFoot

ColorDialog cdlg cdlgColor

PrintDialog pdlg pdlgPrint

3 WebControl 命名规范

数据类型 数据类型简写 标准命名举例

AdRotator adrt Example

Button btn btnSubmit

Calendar cal calMettingDates

CheckBox chk chkBlue

CheckBoxList chkl chklFavColors

CompareValidator valc valcValidAge

CustomValidator valx valxDBCheck

DataGrid dgrd dgrdTitles

DataList dlst dlstTitles

DropDownList drop dropCountries

HyperLink lnk lnkDetails

Image img imgAuntBetty

ImageButton ibtn ibtnSubmit

Label lbl lblResults

LinkButton lbtn lbtnSubmit

ListBox lst lstCountries Panel pnl pnlForm2

PlaceHolder plh plhFormContents

RadioButton rad radFemale

RadioButtonList radl radlGender

RangeValidator valg valgAge

RegularExpression vale valeEmail_Validator

Repeater rpt rptQueryResults

RequiredFieldValidator valr valrFirstName

Table tbl tblCountryCodes

TableCell tblc tblcGermany

TableRow tblr tblrCountry

TextBox txt txtFirstName

ValidationSummary vals valsFormErrors

XML xmlc xmlcTransformResults

.NET中的命名规则

名称空间的命名

命名名称空间的一般规则如下:

CompanyName.TechnologyName

这样,我们看到的名称空间应该是这样的:

Microsoft.Office

PowerSoft.PowerBuilder

注意:这只是一个原则。第三方公司可以选择其它的名字。

避免用公司名称或其它著名品牌的名称作为名称空间的前缀,这样会造成两个公布的名称空间有同一个名称的可能性。

例如: 将微软提供的Office自动类命名为Microsoft.Office

使用Pascal大写方式,用逗号分隔逻辑成分。

例如:Microsoft.Office.PowerPoint

如果你的品牌使用的是非传统大写方式,那么一定要遵循你的品牌所确定使用的大写方式,即使这种方式背离了通常的名称空间大写规则。

例如:NeXT.WebObjects

ee.cummings

类和类成分的命名 类的命名原则是用名词或名词短语命名类,使用Pascal大写。减少类名中缩写的使用量。不要使用任何类前缀(比如C),不要使用带下划线的字符。

例如:public class FileStream {}

public class Button {}

public class String {}

变量的命名

名称中各单词首字母均为小写。

例如:findLastRecord

redrawMyForm

在内部范围中避免使用与外部范围中的名称相同的名称。若访问错误变量,则会产生错误结果。若变量与同一名称的关键字冲突,则必须在关键字前加适当的类型库以作标识。

例如:若有一个名为 date 的变量,只能通过调用 System.Date 来使用内部 Date 函数。

函数和方法的命名

函数和方法的命名应该以动词开始,使用Pascal大写。不要使用带下划线的字符。

例如:InitNameArray

CloseDialog

接口命名原则

使用名词或名词短语,或者描述行为的形容词来命名接口,使用Pascal大写。 减少接口名中缩写的使用量,在接口名前加前缀I,以表示这个类型是一个接口。

例如: IComponent(描述性名词)

ICustomAttributeProvider(名词短语)

IPersistable(形容词)

参数的命名

使用描述性参数名。参数名应该具有足够的描述性,这样在大多数情况下参数名和它的种类可以用来确定它的意思。根据参数的意思来命名参数,而不是根据参数的种类来命名。我们希望开发工具可以用很方便的方式提供关于参数种类的信息,这样参数名可以得到更好的使用,可以对语义而不是对种类进行描述。但是偶尔使用根据类型命名的参数名也是完全可以的。不要使用保留参数。如果在下一个版本中需要更多的数据,可以增加进来。

例如:Type GetType (string typeName)

string Format (string format, object [ ] args)

属性的命名

用名词或名词短语命名属性,属性与类型要一样。 用与一个类型的名称相同的名字来命名属性时,就使这个属性的类型成为那个类型。虽然听起来有些奇怪,但这是正确的。

例如:public enum Color {...}

public class Control {

public Color Color {get {...} set {...}}

} 事件的命名

用EventHandloer后缀命名事件处理程序,使用名为sender和e的两个参数,Sender参数代表提出事件的对象。Sender参数永远是一个类型对象,即使它可能使用了更为特定的类型,与事件相关的状态被封装在一个名为e的事件类范例中。要使用这个类型的正确的、特定的事件类。

例如:public delegate void MouseEventHandler(object sender, MouseEvent e);

命名事件名时,需要有之前和之后的时态概念,因此要使用现在时态和过去时态(不要使用BeforeXxx\\AfterXxx的方式)。例如,可以被取消的结束事件就有Closing事件和Closed事件。

长项和常用项的命名

可使用缩写使名称长度适中,通常,多于 32 个字符的变量名在低分辨率的监视器上难以阅读。同时,请确保缩写在整个应用程序中保持一致。

例如:可以使用“HTML”代替“HyperText Markup Language”。

代码书写格式规范

o 文件之中不得存在无规则的空行,比如说连续十个空行。一般来讲函数与函数之间的空行为2-3行。

o 在函数体内部,在逻辑上独立的两个函数块可适当空行,一般为1-2行。

o 每行长度尽量避免超过屏幕宽度,应不超过80个字符。

o 尽量用公共过程或子程序去代替重复的功能代码段。

o 使用括号清晰地表达算术表达式和逻辑表达式的运算顺序。如将 x=a*b/c*d 写成 x=(a*b/c)*d可避免阅读者误解为x=(a*b)/(c*d)。

o 避免采用过于复杂的条件测试。

o 避免过多的循环嵌套和条件嵌套。

o 一个函数不要超过200行。一个文件应避免超过2000行。

o 避免使用goto语句。

o 避免采用多赋值语句,如x = y = z;。

代码注释规范

.cs文件的注释

所有.cs文件开头都要加上注释,写明文件创建时间、作者、用途概述等

例如:

//********************************************************

//新增日期:2004.7.19

//作者:XXX

//內容说明: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

//********************************************************