首页 > 代码库 > .Net命名规范
.Net命名规范
遵循命名规范,主要是为了开发人员对框架元素易于理解,保持一致性。
- 大小写约定
标识符的大小写规则:为了区分标识符中的多个单词,把标识符中的每个单词的首字母大写。不要用下划线,或者在标识符中的任何地方使用下划线。一般两种方式:PascalCasing 帕斯卡、camelCasing 驼峰
PascalCasing约定用于除了参数名之外的所有标识符,它把标识符中每个单词的首字母(包括长度为两个字符以上的首字母缩写词)大写,如:PeopertyDescriptor、Htmltag
两个及以上首字母缩写词都要用大写,如RBGConnection、IOStream。
camelCasing仅用于参数的名字,它把标识符中除了第一个单词之外的首字母大写,如果首字母是缩写词,都要用小写,如:htmlTag,rbgConnection;对于camelCasing参数,无论首字缩写词有多长,都不要用大写对于(闭合形式)复合词,要视作一个单词,如endpoint、headfirst、Something、Anyone等等。
- 通用命名约定
对于单词的选择,应该注重于 易于阅读的名字,可读性,而不是简洁性(匈牙利命名法)。
匈牙利命名:采用小写形式的数据类型作为变量的前缀,如uiCount,另一种是给变量名加上前缀来表示作用域。缺点:自定义的数据类型,开发人员无法找到一些有意义的一致性的前缀。尽量不要使用缩写词和缩略词作为标识符名字的组成部分,但对于大家都熟知的首字母缩写词也是可以用的,例如:UI(User Interface)、HTML(Hyertext markup Language)。
避免使用编程语言特有的名字;要给类型名称使用语义上有意义的名字,而不是使用语言特有的关键字;如GetLength比GetInt要好的多了;要使用CLR通用的类型,而不是使用特有的别名如:ToInt64而不是用ToLong.
对于已有的API的新版本命名,要与旧的尽量相似,优先使用后缀而不是前缀,有利于智能提示时两个API能在一块。如果API的名字是唯一有意义的名字(工业标准),可以用数字作为后缀,或者启用一个新的名字。对于API版本的区别,最好别用Ex后缀。
- 程序集和DLL的命名
命名空间(namespace)和DLL不是一回事。一个dll里面可能会有多个命名空间名,给dll程序集命名最好选用具有代表性的名字,或者可以采用下面的格式:
<Company>.<Component>.dll
命名空间的名字模板:<Company>.(<Product>|<Technology>)[.<Feature>][.<Subnamespace>]
- 类、结构和接口
类和结构应该是名词或名词短语,应为他们代表的是系统中的实体;如果接口表示的是类型层次的根基,那么它应该是名词或名词短语,如果是表示某种能力,那么应该是形容词或形容词短语,如IComparable<T>。
对于类的派生类,可以用基类作为后缀;接口一般用“I”前缀。
对于泛型类的参数,如果只有一个参数,可以用“T”字母,也可以在参数名的前面加上”T“。
- 常用的类型命名
枚举类型一般用单词表示就行,对于位域类型枚举(标记枚举)最好用复数名词。
方法、事件一般用动词或动词短语;尽量避免自定义事件处理函数,大多数API可以直接使用EventHandler<T>。
属性要用名词或形容词,对于集合属性,应该用复数;可以用类型名来命名属性;例如:
以上内容摘于《.Net设计规范》
.Net命名规范