C#基础笔记——命名规范

一、概述:

对于代码命名我们都不陌生,见名之意是最基本的,但是如何做到见名之意呢,如何做到像自然语言那样清晰的描述呢?

下面我们就从.Net基本命名规范说起。

二、基本命名规范 

1. 以<Company>.<Component>.<Layer>为命名空间命名:

  如:CTIL.CRMEasy.Business,这里的CTIL是公司,CRMEasy指项目组件,Business指业务层。

2. 程序集(物理分层)不必一定与命名空间(逻辑分层)相同:

  多数时候我们的程序集和命名空间是一致的,只有特殊情况需要特殊处理。

3. 在命名空间中使用复数:

  当相似的类型被分组到同一个命名空间下,可以考虑命名空间使用复数。

4. 避免命名与FCL关键字命名相同;

5. 用名词或者名词词组给类命名:

  类对应着实体世界中的对象,即意味着他是名称描述,如:UserControl

6. 用形容词组给接口命名:

  接口的规范是“Can do”,形容规范的行为,所以命名应该是形容词。

7. 子类命名以父类名称为后缀:

  这个很好理解,你爸姓什么,你就应该姓什么,老外的姓是放在后面的。

8. 泛型类型参数要以T作为前缀:

  这属于硬性规范吧,一般泛型使用T,多参数可以用T1、T2等,记住:只要是泛型就应该以T作为前缀命名。

9. 以复数命名枚举,以单数命名枚举元素:

  枚举类型是由多个单一的枚举元素做成。

10.用PasecalCasing命名公开元素:

  开发给调用者使用的属性、字段和方法都应该使用PasecalCasing命名方式。

11.用camelCasing命名私有字段和局部变量:

  私有字段和局部变量只对本类型负责,所以采用与开放性属性字段不同的命名规范。

12. 用类型对应属性名:

  如果一个属性对应一个类性,则应该直接用类型作为属性名。

13.有选择的使用前缀:

  最常用的前缀:m_和s_分别表示实例变量(my)和静态变量(static),切记:宁可不用也不要滥用。

14. 使用肯定性的短语命名布尔属性:

  布尔只代表是否,所以可以用肯定性的短语表示他,如:Is、Has和Can作为前缀。

15.优先使用后缀表示已有类型的新版本:

  后缀作为版本号,多数使用数字(竟管我们不赞成使用数字)。

16. 委托和事件类型应添加上一级为后缀:

  委托本身就是一个类,他的上一级可以成为他的父类,由于满足上面的第7条。

17.委托和事件类型变量使用动词或者形容词短语命名:

  如:Click(单击事件)

18.事件处理器命名采用组合方式:

  如:Button_Click

此刻开始为我的代码规范命名,以此18条为戒律。

原文地址:https://www.cnblogs.com/Abel-Zhang/p/NamingNotations.html