(C#)的命名规范
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#)的命名规范的更多相关文章
- JavaScript var关键字、变量的状态、异常处理、命名规范等介绍
本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...
- Java命名规范
驼峰法则: 将所有字母都小写(包括缩写),然后将单词的第一个字母大写. 每个单词的第一个字母都大写,来得到大驼峰式命名. 除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名. 为避免歧 ...
- JavaScript知识点总结(命名规范,变量的作用域)
命名规范 有人说JavaScript的宽容性是这个语言最糟糕的方面之一.比如说想把2个数字加在一起,JavaScript会把其中一个数字解析成字符串,那么就会得到一个奇怪的字符串,而不是2个数字的和. ...
- js的命名规范
js的命名规范 1.驼峰命名法:首字母是小写的,接下来的字母都以大写字符开头.例如: var testValue = 0; var oneValue = 10; 2. ...
- 浅谈Android编码规范及命名规范
前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...
- [No000099]软件版本命名规范
软件版本阶段说明 Base: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构. Alpha: 此版本表示该软件在 ...
- Google C++命名规范
时间:2014.03.02 地点:基地 -------------------------------------------------------------------------------- ...
- javascript命名规范
javascript命名规范 3.命名 命名的方法通常有以下几类: a).命名法说明 1).camel命名法,形如thisIsAnApple 2).pascal命名法,形如ThisIsAnApple ...
- Android 命名规范 (提高代码可以读性)
android文件众多,根据名称来辨别用途很重要,因此命名要规范 这篇文章可参考:Android 命名规范 (提高代码可以读性) 刚接触android的时候,命名都是按照拼音来,所以有的时候想看懂命名 ...
- Android资源(图片)命名规范
(转自:http://www.jb51.net/article/38796.htm) 图片命名注意: 1,不能以下划线("_")开头: 2,以数字加下划线("[0-9]_ ...
随机推荐
- AspxGridView 数据的汇总统计
AspxGridView底部增加数据汇总行 这个功能在AspxGridView中不用复杂的代码实现, 实际上只是设置下GridView的属性而已 1. ShowFooter设置为True,即显示. 位 ...
- HttpURLConnection&HttpClient网络通信
一:HttpURLConnection简介: 用于发送或者接受HTTP协议请求的类,获得的数据可以是任意类型和长度,这个类可以用于发送和接收流数据,其长度事先不知道. 使用这个类遵循一下模式: 获得一 ...
- C# 线程传参
传参方式有两种: 1.创建带参构造方法类 传参 2.利用Thread.start(8)直接传参,该方法会接收一个对象,并将该对象传递给线程,因此在线程中启动的方法 必须接收object类型的单个参数. ...
- 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 ...
- Pure-ftpd无法连接到服务器 425错误
今天是五一假期的前一天,闲来没事,打开自己的博客,发现很久没有备份数据了,由于工作方面的原因,自己慢慢的退出了技术界,但本人还是依然向往技术界啊!各位技术宅们,加油! 问题发现 当我打开FTP客户端软 ...
- OpenGL-渲染管线的流程(有图有真相)
视频教程请关注 http://edu.csdn.net/lecturer/lecturer_detail?lecturer_id=440 学习shader之前必须知道的事情,shader(着色语言)到 ...
- QT 多线程程序设计【转】
QT通过三种形式提供了对线程的支持.它们分别是,一.平台无关的线程类,二.线程安全的事件投递,三.跨线程的信号-槽连接.这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势.多线程编 ...
- (转)Couchbase介绍,更好的Cache系统
在移动互联网时代,我们面对的是更多的客户端,更低的请求延迟,这当然需要对数据做大量的 Cache 以提高读写速度. 术语 节点:指集群里的一台服务器. 现有 Cache 系统的特点 目前业界使用得最多 ...
- NodeJs多进程和socket.io通讯-DEMO
一.开启多进程 const os = require('os'); const cp = require('child_process'); const forkList = {}; const fo ...
- 关于IOS9更新的适应与适配
最下面一行为刚刚添加的 iOS9中新增App Transport Security(简称ATS)特性, 主要使到原来请求的时候用到的HTTP,都转向TLS1.2协议进行传输.这也意味着所有的HTTP协 ...