• 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条为戒律。

  • 相关阅读:
    MindSpore 建立神经网络
    MindSpore 数据加载及处理
    MindSpore 初探, 使用LeNet训练minist数据集
    Ubuntu 20.04 Xrdp Black Screen Ubuntu 20.04 Xrdp 远程桌面黑屏
    基于Transformer的ViT、DETR、Deformable DETR原理详解
    Ubuntu 18.04 / 20.04 自定义锁屏时间
    Transformer中K 、Q、V的设置以及为什么不能使用同一个值
    Auto-Encoding Scene Graphs for Image Captioning
    Eureka中读写锁的奇思妙想,学废了吗?
    PostgreSQL-查询所有索引
  • 原文地址:https://www.cnblogs.com/Abel-Zhang/p/NamingNotations.html
Copyright © 2020-2023  润新知