http://gray.iteye.com/blog/644626

http://developer.51cto.com/art/200908/143787.htm

http://blog.csdn.net/gzy11/article/details/5936310

本文从类、类字段、方法属性、参数常量、接口、事件、命名空间等9个方面总结了C#语言命名的规则。
下面介绍C#语言命名的9种规范:

a)类

【规则1-1】使用Pascal规则命名类名,即首字母要大写。

【规则1-2】使用能够反映类功能的名词或名词短语命名类。

【规则1-3】不要使用“I”、“C”、“_”等特定含义前缀。

【规则1-4】自定义异常类应以Exception结尾。

【规则1-5】文件名要能反映类的内容,最好是和类同名。

b) 类字段

【规则2-1】用camel规则来命名类成员变量名称,即首单词(或单词缩写)小写。

【规则2-2】类字段变量名前可加“_”前缀。

【规则2-3】坚决禁止在普通变量前加“m_”(这是VC老命名规则)。

c)方法

【规则3-1】方法名采用Pascal规则,第一个字符要大写。

【规则3-2】方法名应使用动词或动词短语。

【规则3-3】类中访问修饰符或功能相同的方法应该放在一起, 且公共或实现接口的方法在前。

d)属性

【规则4-1】使用名词定义属性,属性使用Pascal规则,首字符大写。

【规则4-2】属性和相应字段名称要关联,可以使用“重构”菜单来生成属性。

e)参数

【规则5-1】参数采用camel规则命名,且首字符小写。

【规则5-2】使用描述性参数名称,参数名称应当具有最够的说明性。

【规则5-3】不要给参数加匈牙利语类型表示法的前缀。

【规则5-4】检查方法所有输入参数的有效性。

f)常量

【规则6-1】只读常量使用Pascal命名规则,即首字母大写。

【规则6-2】枚举名使用Pascal规则命名,枚举成员本质属于常量,命名规则同上。

【规则6-3】枚举值从小到大顺序定义。

【规则6-4】静态字段或属性采用Pascal规则,即首字符大写。

g)接口

【规则7-1】接口定义使用Pascal规则,且必须以大写“I”开头。

【规则7-2】接口名称要有意义,中间不要有下划线“_”等字符。

【规则7-3】如果类实现了接口,名称尽量和接口相同,只是省掉“I”字符。

h)事件

【规则8-1】委托名称采用Pascal规则,即首字符大写。

【规则8-2】定义事件的委托要使用EventHandler后缀,且包括sender和e两个参数。

【规则8-3】事件用到的参数类,名称要带EventArgs后缀。

i)   C#语言命名空间

【规则9-1】命名空间名称采用Pascal规则,且首字符大写。

【规则9-2】命名空间名称尽量反映其内容所提供的整体功能。

总结:
命名空间,类,事件,接口,常量,属性,方法使用Pascal命名,即首字母大写
参数,变量(类字段)使用camel命名法,即首字母小写。

(C#)的命名规范的更多相关文章

  1. JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

    本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...

  2. Java命名规范

    驼峰法则: 将所有字母都小写(包括缩写),然后将单词的第一个字母大写. 每个单词的第一个字母都大写,来得到大驼峰式命名. 除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名. 为避免歧 ...

  3. JavaScript知识点总结(命名规范,变量的作用域)

    命名规范 有人说JavaScript的宽容性是这个语言最糟糕的方面之一.比如说想把2个数字加在一起,JavaScript会把其中一个数字解析成字符串,那么就会得到一个奇怪的字符串,而不是2个数字的和. ...

  4. js的命名规范

                   js的命名规范   1.驼峰命名法:首字母是小写的,接下来的字母都以大写字符开头.例如: var testValue = 0; var oneValue = 10; 2. ...

  5. 浅谈Android编码规范及命名规范

    前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...

  6. [No000099]软件版本命名规范

    软件版本阶段说明 Base: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构. Alpha: 此版本表示该软件在 ...

  7. Google C++命名规范

    时间:2014.03.02 地点:基地 -------------------------------------------------------------------------------- ...

  8. javascript命名规范

    javascript命名规范 3.命名 命名的方法通常有以下几类: a).命名法说明 1).camel命名法,形如thisIsAnApple 2).pascal命名法,形如ThisIsAnApple ...

  9. Android 命名规范 (提高代码可以读性)

    android文件众多,根据名称来辨别用途很重要,因此命名要规范 这篇文章可参考:Android 命名规范 (提高代码可以读性) 刚接触android的时候,命名都是按照拼音来,所以有的时候想看懂命名 ...

  10. Android资源(图片)命名规范

    (转自:http://www.jb51.net/article/38796.htm) 图片命名注意: 1,不能以下划线("_")开头: 2,以数字加下划线("[0-9]_ ...

随机推荐

  1. AspxGridView 数据的汇总统计

    AspxGridView底部增加数据汇总行 这个功能在AspxGridView中不用复杂的代码实现, 实际上只是设置下GridView的属性而已 1. ShowFooter设置为True,即显示. 位 ...

  2. HttpURLConnection&HttpClient网络通信

    一:HttpURLConnection简介: 用于发送或者接受HTTP协议请求的类,获得的数据可以是任意类型和长度,这个类可以用于发送和接收流数据,其长度事先不知道. 使用这个类遵循一下模式: 获得一 ...

  3. C# 线程传参

    传参方式有两种: 1.创建带参构造方法类 传参 2.利用Thread.start(8)直接传参,该方法会接收一个对象,并将该对象传递给线程,因此在线程中启动的方法 必须接收object类型的单个参数. ...

  4. Javascript 日期时间超强正则表达式

    var reg = /^([0-9]{4})-((?:0[1-9]|[1-9]|1[1-2]))-((?:(?:0[1-9]|[1-9])|1[0-9]|2[0-9]|3[0-1]))$|^([0-9 ...

  5. Pure-ftpd无法连接到服务器 425错误

    今天是五一假期的前一天,闲来没事,打开自己的博客,发现很久没有备份数据了,由于工作方面的原因,自己慢慢的退出了技术界,但本人还是依然向往技术界啊!各位技术宅们,加油! 问题发现 当我打开FTP客户端软 ...

  6. OpenGL-渲染管线的流程(有图有真相)

    视频教程请关注 http://edu.csdn.net/lecturer/lecturer_detail?lecturer_id=440 学习shader之前必须知道的事情,shader(着色语言)到 ...

  7. QT 多线程程序设计【转】

    QT通过三种形式提供了对线程的支持.它们分别是,一.平台无关的线程类,二.线程安全的事件投递,三.跨线程的信号-槽连接.这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势.多线程编 ...

  8. (转)Couchbase介绍,更好的Cache系统

    在移动互联网时代,我们面对的是更多的客户端,更低的请求延迟,这当然需要对数据做大量的 Cache 以提高读写速度. 术语 节点:指集群里的一台服务器. 现有 Cache 系统的特点 目前业界使用得最多 ...

  9. NodeJs多进程和socket.io通讯-DEMO

    一.开启多进程 const os = require('os'); const cp = require('child_process'); const forkList = {}; const fo ...

  10. 关于IOS9更新的适应与适配

    最下面一行为刚刚添加的 iOS9中新增App Transport Security(简称ATS)特性, 主要使到原来请求的时候用到的HTTP,都转向TLS1.2协议进行传输.这也意味着所有的HTTP协 ...