2024年6月3日发(作者:)

C#语言规范

1. 命名规范

a) 类

【规则1-1】使用Pascal规则命名类名,即首字母要大写。

【规则1-2】使用能够反映类功能的名词或名词短语命名类。

【规则1-3】不要使用“I”、“C”、“_”等特定含义前缀。

【规则1-4】自定义异常类应以Exception结尾。

【规则1-5】文件名要能反映类的内容,最好是和类同名。

b) 类字段

【规则2-1】用camel规则来命名类成员变量名称,即首单词(或单词缩

写)小写。

【规则2-2】类字段变量名前可加“_”前缀。

【规则2-3】坚决禁止在普通变量前加“m_”(这是VC老命名规则)。

c)方法

【规则3-1】方法名采用Pascal规则,第一个字符要大写。

【规则3-2】方法名应使用动词或动词短语。

【规则3-3】类中访问修饰符或功能相同的方法应该放在一起, 且公共

或实现接口的方法在前。

d)属性

【规则4-2】属性和相应字段名称要关联, 可以使用“重构”菜单来生

成属性。

【规则4-1】使用名词定义属性,属性使用Pascal规则,首字符大写。

e)参数

【规则5-2】使用描述性参数名称,参数名称应当具有最够的说明性。

【规则5-3】不要给参数加匈牙利语类型表示法的前缀。

【规则5-4】检查方法所有输入参数的有效性。

【规则5-1】参数采用camel规则命名,且首字符小写。

f)常量

【规则6-2】枚举名使用Pascal规则命名,枚举成员本质属于常量,命

名规则同上。

【规则6-3】枚举值从小到大顺序定义。

【规则6-4】静态字段或属性采用Pascal规则,即首字符大写。

【规则6-1】只读常量使用Pascal命名规则,即首字母大写。

g)接口

【规则7-1】接口定义使用Pascal规则,且必须以大写“I”开头。

【规则7-2】接口名称要有意义,中间不要有下划线“_”等字符。

【规则7-3】如果类实现了接口,名称尽量和接口相同, 只是省掉“I”

字符。

h)事件

【规则8-2】定义事件的委托要使用EventHandler后缀,且包括sender

和e两个参数。

【规则8-3】事件用到的参数类,名称要带EventArgs后缀。

【规则8-1】委托名称采用Pascal规则,即首字符大写。

i) 命名空间

【规则9-1】命名空间名称采用Pascal规则,且首字符大写。

【规则9-2】命名空间名称尽量反映其内容所提供的整体功能。

2. 注释规范

a)文件头部注释

【规则1-1】文件都包含文件头, 要说明文件名、作者、创建时间、变

更记录。

【规则1-2】推荐采用.NET形式书写头部注释。

b)类及其成员注释

【规则2-2】代码行文注释采用“//”和“/**/”进行, 应该尽量说明

问题。

【规则2-1】对方法和类使用“///”三斜线注释。

3.行文规范

a)缩写规范

【规则1-1】标识符应当直观可望文知意,不提倡使用任何缩写。

【规则1-2】字符串变量推荐是用“str”或“s”开头,采用

来初始化。

【规则1-3】普通对象可以以“obj”开头。

【规则1-4】缩写可自行定义,一般取单词的前/后字符组成,以含义直

观为准则。

【规则1-5】一般情况下不要让缩写破坏标识符的含义。

b)排版

【规则2-1】每行语句至少占一行,如果语句过长(超过一屏),则该语

句断为两行显示。

【规则2-2】把相似的内容放在一起,比如字段、属性、方法、事件等,

使用“#region--#endregion”命令分组。

【规则2-3】多个程序元素进行对等操作是, 操作符之前、之后或者前