一、概述:

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

下面我们就从.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

C#基础笔记——命名规范相关推荐

  1. day01--java基础编程:计算机基础知识 ,java语言概述,java开发环境搭建,eclipse概述,创建简单java项目,JDK JRE JVM的关系,java开发中的命名规范,编程风格

    1 Day01–Java开发环境+HelloWorld 1.1 计算机基础知识 资料下载网址:刘沛霞 18600949004 code.tarena.com.cn tarenacode code_20 ...

  2. C语言中定义加号的数据类型,C/C++知识点之c语言基础数据类型及命名规范

    本文主要向大家介绍了C/C++知识点之c语言基础数据类型及命名规范,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助.1. 常量是程序运行期间不能被改变的量; 变量代表一个存储区域,存 ...

  3. android接口类命名规范_超全面的UI基础设计规范来啦,还不收藏 ~

     写在前面的话   很多刚入行的UI设计师开始接触移动端UI设计的时候,对于基础的界面尺寸规范可能会有一定的模糊认知,导致做出来的界面往往会感觉不是那么和谐,却也不知道怎么去完善和改进. 对于大多数的 ...

  4. git flow 命名规范 驼峰_图解ThinkPHP5框架(一):基础知识,开发规范与目录结构

    php中文网最新课程 每日17点准时技术干货分享 基于最新ThinkPHP5.0.8制定,原稿是xmind思维导图制作,如果觉得图片看不太清楚,可以下载xmind源文件,用xmind软件打开. 另外, ...

  5. java 字符串转骆驼命名_程序员必知的Java基础:5条命名规范和8种数据类型归纳...

    原标题:程序员必知的Java基础:5条命名规范和8种数据类型归纳 一.Java命名规范 任何一种语言都有一套针对于语言自身的命名的规范,java也不例外.接下来,我就列举一下java对命名的规范. 下 ...

  6. JAVA基础(三)——服务器操作系统、Java开发环境、Java技术架构、定义Java类及其命名规范、Java注释方式

    1. 服务器操作系统 当前主流的服务器操作系统则主要分为:Windowsserver.UNIX.Linux.NetWare这四大阵容. (1)Windowsserver作为推广的最好,用户群体最大的服 ...

  7. [置顶] Objective-C ,ios,iphone开发基础:命名规范

    命名规范:http://bukkake.iteye.com/blog/695492  点击打开链接 转载于:https://www.cnblogs.com/pangblog/p/3292256.htm ...

  8. 类属性、类方法;私有属性、公有属性;私有方法、公有方法;静态属性、静态方法;python的命名规范__xx__\__xx\_xx(自用笔记)

    Ⅰ.类属性.类方法(类和实例都能调用类属性和类方法) 类是一个特殊的对象,Python 中 一切皆对象:class AAA: #定义的类属于 类对象obj1 = AAA() #属于 实例对象 除了封装 ...

  9. 枚举命名规范_UE4 C++基础教程 - 编码规范

    为什么要学习编码规范? 良好的编码规范不仅利于项目维护,也增加了代码辨识度.使我们在阅读代码时能够更加清晰的理解代码意图.维护编码规范不是一件机械化的工作,它更像是一门艺术,让我们在有限的规范内发挥自 ...

最新文章

  1. 微服务架构 — 服务治理 — 服务监控与告警、服务日志与审计
  2. mysql8.0日期类型_MySQL8.0中的日期类数据及其函数
  3. element-UI中手动调用table排序
  4. jQuery的概念、用法、常见面试题详解
  5. success 已正常处理 hide_最新微信小程序授权的详细处理思路(一)
  6. python初始化方法对应的变量是全局变量嘛_在Python中初始化全局变量的正确方法...
  7. linux c之c语言符合标准的头文件和linux常用头文件
  8. Colaboratory平台+Mask R-CNN进行模型训练和实例分割
  9. 目前为止最全的微信小程序项目实例
  10. 网站建设流程都有哪些?
  11. 疯狂考证的两年:通过CFA、FRM、CMA经验与收获
  12. IO缓冲区(buffer)的原理及作用
  13. 共识算法PBFT资料整理
  14. 红光光浴一次能排多少湿气?-红光光浴/种光光学
  15. 牛客Steins;Gate(原根+FFT)
  16. 小程序自定制从顶部弹出的picker,模拟贝壳找房
  17. 记一次Max模型导入到GIS平台歪了,尺寸不对过程分析
  18. 关于下拉框select和option默认值选定
  19. 正则表达式详解(三、常用符号的使用)
  20. 半波对称振子方向图_HFSS:对称振子天线的方向图,为什么不对称?

热门文章

  1. python官方推荐的三本书-一个合格的python程序员,应该从这三本书入手
  2. python数据结构推荐书-关于数据结构,有哪些不错的参考书推荐?
  3. python爬虫原理-python爬虫之认识爬虫和爬虫原理
  4. python自学书籍顺序-python:入门到实践书籍学习(六)
  5. python去哪里学-学Python从哪里开始?
  6. 上海python培训比较好的机构-上海Python培训机构推荐
  7. python中文叫什么意思-在python中,“~”是什么意思?
  8. python填写excel-python读写Excel
  9. python3安卓版下载-QPython3H安卓运行Python神器
  10. python有道翻译-Python爬去有道翻译