现在的位置: 首页 > 综合 > 正文

C#命名规则和开发习惯

2013年09月07日 ⁄ 综合 ⁄ 共 1790字 ⁄ 字号 评论关闭

命名样式

样式分类

名称

解释

适用环境

例子

Pascal 大小写

首字母和后面的每个单词的首字母都大写;其他字母小写

 

BackColor

Camel 大小写

首字母小写,而后面的每个单词的首字母大写;其他字母小写

 

backColor

大写

所有字母都大写

l          缩写。

l          少于等于2个字符

System.IO

System.Web.UI

样式的选择

标识符

命名格式

例子

备注

参数、局部变量

Camel

public int GetTypeID(string typeName)

{  int typeID;   }

 

PrivateProtected的实例字段

Camel

private string redValue;

protected bool isOk;

 

界面控件

Camel

private Label lblAlarm;

 

缩写

大写

namespace System.IO

{    }

缩写必须是被普遍接受、众所周知的缩写。

除上面的标识符外

Pascal

public System.Drawing.Color BackColor

{    }

 

 

原则和习惯

首要原则

有意义的,描述性的词语来命名。能够一眼看出它作什么。别使用会引起误解的名字。如果名字一目了然,就无需用文档来解释方法的功能了

1.         除约定俗成的,别用缩写。用name, address, salary等代替 nam, addr, sal

2.         除用于循环,别使用单个字母的变量象i, n, x . 而要使用 index, temp等。
for ( int i = 0; i < count; i++ ){ ...}

其他习惯

l          除了界面控件外,不要使用类型前缀。比如:使用名称amount,而不是 intAmount

l         类:使用名词、名词短语命名。比如:public class FileStream

l          方法:使用动词、动词短语开始。比如:CreateUser(), RemoveAt()等;

l          接口:以 I 开始,后面加上名词、名词短语、形容词命名。比如:IDisposable

l          常量:所有单词大写,多个单词之间用 "_" 隔开。public const string PAGE_TITLE = "Welcome";

l          命名空间:

1.         基本格式:

CompanyName/ProjectName.TechnologyName[.Feature][.Design]

a)         CompanyName/ProjectName:公司名、项目名称或产品名称;

b)         TechnologyName:稳定的、公认的技术名称或架构层次名称;

c)         [.Feature][.Design]:可选的功能与设计;

例如:

//微软公司Web开发中的UI中的Design

namespace Microsoft.Web.UI.Design        

//西门子报价项目中业务逻辑层中的项目管理

namespace SiemensQuotation.BusinessRules.ProjectManagement  

2.         几个规则

a)         嵌套的命名空间应当有依赖关系。例如:System.Web.UI.Design 中的类依赖于 System.Web.UI 中的类,而不能相反。

b)        命名空间和类不能使用同样的名字。例如,命名空间Debug下最好不要又一个类名为Debug

c)         如果公司名、项目名称或产品名称太长的话,可以用缩写(且全部大写)

控件命名

控件的名称中需要加上前缀,之所以这样做是为了区分界面的控件和普通的对象,由于界面修改往往非常频繁,区分开来能使你更快速的找到控件,从而修改界面。举一个例子:

界面有10TextBox10Label。一个TextBox对应一个Label,为了完成读写,你至少要有20条语句来从控件进行取、赋值操作,如果有前缀的话,输入this.txt,你就几乎马上能找到这个控件。反之,如果没有前缀,由于窗口或页面对象拥有大量的属性和变量(>100个),你将花费大量时间来查找。另外一个TextBox对应一个Label(一个代表值,一个代表名称),它们往往指同一样事物,如果有前缀,就很容易区分这两个控件。

控件

前缀

抱歉!评论已关闭.