命名总体规则
名字应该能够标识事物的特性,并且与业务挂钩。
名字一律使用英文单词,而不能为拼音。
名字可以有两个或三个单词组成,但不应多于4个,控制在3至30个字母以内。
在名字中,多个单词用大写第一个字母(其它字母小写)来分隔。例如:IsSuperUser。
命名规范
命名概述
以下几点是推荐的命名方法。
Pascal命名法:所有单词的首字母都大写,其他字母小写
Camel命名法:除首字母外,其他单词的首字母大写,其他字母小写
在类属性的名称中包含类名是多余的,如 Book.BookTitle。而是应该使用 Book.Title。
在变量名中使用互补对,如 min/max、begin/end 和 open/close。
布尔变量名应该包含 Is,这意味着 Yes/No 或 True/False 值,如 fileIsFound。
即使对于可能仅出现在几个代码行中的生存期很短的变量,仍然使用有意义的名称。仅对于短循环索引使用单字母变量名,如 i 或 j。
文件名要和类名相同,一般情况下一个类一个文件,文件名遵从Pascal命名法,无特殊情况,扩展名小写,使用统一而又通用的文件扩展名: C# 类 .cs。
类
使用 Pascal 大小写。
使用全称避免缩写,除非缩写已是一种公认的约定,如URL、HTML。对于某个命名空间、文件夹下类名中单词都比较长的情况,可以缩写(名字中的关键字不能缩写,其他单词只取首字母),将所有的缩写做一个说明文件,放在同级目录下的开头。
不使用下划线(_)。
类的命名要见名知意。
数据访问层:类名后加DAL(Data Access Layer)。注意:在.NET中没有DAO的概念,DAO是在Java中出现的,表示一种数据访问方式。
业务逻辑层:类名后加BLL(Business Logic Layer),如果类名特长可以使用缩写,但在文档中要注明。缩写的全称和意义。
界面层:asp中针对页面的类,不用添加UI前缀或后缀。
实体层:实体类后加Entity做结尾,如果其他方法中,调用实体类作为参数,参数前面加小写en,如果参数过长,使用缩写,但在文档中也要注明。
如果系统规模比较大,应该考虑,对类进行分组放到不同的文件夹中,便于维护,把握粒度。
接口
以下规则概述接口的命名指南:
使用 Pascal 大小写。
在原有类名基础上加“I”,如:IUserDao
不使用下划线(_)。
当类是接口的标准执行时,定义这一对类/接口组合就要使用相似的名称。两个名称的不同之处只是接口名前有一个I前缀。在实现类名后加“Impl”后缀
枚举 (Enum)
对于 Enum 类型和值名称使用 Pascal 大小写。
命名不能缩写,枚举内的内容可以缩写。
命名禁止加Enum 后缀。
参数
参数名称使用Camel大小写
参数名称可缩写
方法
以动词开头。
使用 Pascal 大小写。
禁止缩写,除非名词本身含有缩写。如:AddStudentMgr ()
属性 (property)
以名词或形容词命名。
使用 Pascal 大小写。
禁止缩写。
委托
以名词或形容词命名。
使用 Pascal 大小写。
禁止缩写。
如果与事件(event)关联,则名称命名使用EventHandler后缀,否则其他名称均以Delegate后缀结尾。如
常量 (const)
全部大写,单词间以“_”分隔。
禁止缩写。
字段
private、protected 使用 Camel 大小写。
禁止使用public。
静态字段
使用名词、名词短语或者名词的缩写命名静态字段。
使用 Pascal 大小写。
集合
命名使用复数。
范型
以一个大写字母(建议优先使用T)表示类的类型,以一个小写字母(如:t)表示类名。