编码命名规范(.NET)(很全,很实用)
编码命名规范(.NET)(很全,很实用)
一、命名约定
1.常用命名术语说明
Pascal命名格式 将标识符的首字母和后面连接的每个单词的首字母都大写。可以对三字符或更多字符的标识符使用 Pascal 大小写。例如:BackColor
Camel命名格式 标识符的首字母小写,而每个后面连接的单词的首字母都大写。例如:backColor
2.名称空间命名
创建命名空间的名称时应使用以下原则:
“公司名称.技术名称.软件产品代号”或“公司名称.产品技术代号” 例如:Nd.ClassLibrary.Charting 命名空间就表示Nd公司里的公用类库里的Charting画图类库。
又如:Net91com.Movies.DataAccess 名称空间标识 http://doc.guandang.net 电影站的数据访问层程序集。
3.类命名
使用完整的单词,避免用缩写。比如ButtonGrid比BtnGrd要长,但是完整从而可读性好。 一般使用名词。类通常表示一种对象,而对象一般使用具有名词性质的名称。 异常类命名:类以Exception结尾, 比如class EQException: Exception{}
4.局部变量命名
私有字段、函数参数和函数内部声明的变量使用camel Casing
不使用的是用以指明字段作用域的前缀。如 s_作为共享字段或静态字段的前缀,以及把g_作为全局变量的前缀。
不使用用以指明数据类型的匈牙利前缀表示法,如(strReturn)。在Microsoft Visual Studio .NET环境中,只要在代码编辑器中将鼠标移到域名上,就可以得到关于字段或变量的类型信息。另外,类型前缀限制了开发者在需要时改变变量的类型的能力,或者更糟糕的是,开发者改变了变量的类型,却没有为变量重新命名,从而产生具有误导性的代码。
5.只读静态变量 Pascal大小写
6.类私有变量
_ + Pascal大小写。如:_BackColor
7.属性命名
使用Pascal Casing。
属性名称通常都是名词。例如Text、SelectedIndex和Width。
8.接口命名
使用Pascal Casing。
在接口名称前缀添加前缀 I 。
接口名称尽量具有描述性,并使用形容词,因为接口常常用于给一个类添加某种能力。基于形容词的名称有IComparable和IFormattable等
9.方法命名
使用Pascal Casing。
方法名通常是动词。方法实现一个对象的行为功能。方法执行某些操作。方法名的例子有Read、Write、Start和Stop。
当重载方法时,参数的顺序和命名要一致。 定义方法名时不要使用缩写。 方法参数 Camel大小写结构
10.事件命名
使用Pascal Casing。
事件名称通常是动词。比如Click、Load和Paint
11.枚举类型
使用Pascal Casing。如:EQFormatConditionOperator。枚举值也是Pascal,比如EQFormatConditionOperator. Equal
12.委托命名delegate
AfterOperationHandler,总是以Handler为后缀结尾
13.类对象命名
使用obj前缀+Pascal命名的方式,来告知我们这个变量是一个对象 比如:EQApplication objApp = new EQApplication();
14.Attribute
Pascal大小写,并以Attribute结尾
17.注意:
不要使用两个字母一样,但大小写不一样的命名来做命名空间,否则在一些不区分大小写的语言里将不能正确区分这些命名空间声明。例如:namespace ee.cummings和namespace EE.cummings这两个声明
不要使用大小写区分参数的形式来创建方法。比如:void MyFunction(string a, string A) 不要使用大小写的不同来分别命名一个属性。比如: int Color { get,set } int COLOR { get,set }
不要使用大小写的不同来分别命名一个方法的名字。比如: void calculate() void Calculate()
不要使用标志名称的一部分作为该标志名称的缩写或简写。比如:GetWindow简写为GetWin。
尽量避免用缩写方式来对方法的参数命名,即方法的参数命名尽量保持完整,让人一目了然。
尽量避免就一个字母的命名,如 i 或 t,而用 index 或 temp
二、代码格式化
1.{}的位置
{与}各单独占一行。例如: if(x > 5) {
//代码 }
2.if、if else的格式 if(condition) {
DoSomething(); }
if(condition) {
DoSomething(); } else {
DoSomethingOther(); }
if(condition) {
DoSomething(); }
else if(condition) {
DoSomethingOther(); } else {
DoSomethingOtherAgain(); }
3.for、foreach的格式 //for格式
for(int i = 0; i < 5; ++i) {
// 代码
}
//foreach的格式
foreach(int i in IntList) {
// 代码 }
4.while/switch的格式 //while格式
while(condition) {
// 代码 }
//switch的格式 switch(condition) {
case A: ... break; case B: ... break; default: ... break; }
5.try的格式 try { ... }
catch(Exception e) { ... }
//或者 try { ... }
catch(Exception e) { ... }
finally { ... }
6.空格
对于有两个或两个以上空格时,一般不要使用空格来表示缩进,使用Tab 逗号、分号之后有一个空格 如:TestMethod(a, b, c);
操作符前后有一个空格,但是单目运算符除外(例如: !运算符)。 如:for(int i = 0; i < 10; ++i)
7.在执行统一任务的各个语句组之间插入一个空行。
8.名称空间写法,各类名称空间插入空行,同一类命命空间按字母序号排列 如:
using System;
using System.Text;
using System.Collections;
using http://doc.guandang.netponentModel; using System.Data; using System.Drawing; using System.Web;
using System.Web.SessionState; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;
using net91com.Movies.DataAccess; using net91com.Movies.Business; using http://doc.guandang.netmonComponent;
三、代码注释 1.注释的目的
a. 文字说明代码的作用 (即为什么要用编写该代码,而不是如何编写); b. 确指出该代码的编写思路和逻辑方法 ; c. 人们注意到代码中的重要转折点 ;
d. 使代码的阅读者不必在他们的头脑中仿真运行代码的执行方法
2.对类文件进行属性注释说明
//=============================================================================== // 公司: // 项目名称: // 模块名称: // 开发人员: // 开发日期: // 功能简介:
// 最后修改时间: // 修改人员:
//===============================================================================
3.避免对很显然易懂的语句进行注释说明 4.代码应该能作到自我解释代码作用的功能。 5.注释来说明何时可能出错和为什么出错
6.在编写代码前进行注释,给类、属性或方法前面加上功能注释 7.注释的内容 a.实参/ 参数
< …… 此处隐藏:4149字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [外语考试]管理学 第13章 沟通
- [外语考试]07、中高端客户销售流程--分类、筛选讲
- [外语考试]2015-2020年中国高筋饺子粉市场发展现
- [外语考试]“十三五”重点项目-汽车燃油表生产建
- [外语考试]雅培奶粉培乐系列适用年龄及特点
- [外语考试]九三学社入社申请人调查问卷
- [外语考试]等级薪酬体系职等职级表
- [外语考试]货物买卖合同纠纷起诉状(范本一)
- [外语考试]青海省实施消防法办法
- [外语考试]公交车语音自动报站系统的设计第3稿11
- [外语考试]logistic回归模型在ROC分析中的应用
- [外语考试]2017-2021年中国隔膜泵行业发展研究与
- [外语考试]神经内科下半年专科考试及答案
- [外语考试]园林景观设计规范标准
- [外语考试]2018八年级语文下册第一单元4合欢树习
- [外语考试]分布式发电及微网运行控制技术应用
- [外语考试]三人行历史学笔记:中世纪人文主义思想
- [外语考试]2010届高考复习5年高考3年联考精品历史
- [外语考试]挖掘机驾驶员安全生产责任书
- [外语考试]某211高校MBA硕士毕业论文开题报告(范
- 用三层交换机实现大中型企业VLAN方案
- 斯格配套系种猪饲养管理
- 涂层测厚仪厂家直销
- 研究生学校排行榜
- 鄱阳湖湿地景观格局变化及其驱动力分析
- 医学基础知识试题库
- 2010山西省高考历年语文试卷精选考试技
- 脉冲宽度法测量电容
- 谈高职院校ESP教师的角色调整问题
- 低压配电网电力线载波通信相关技术研究
- 余额宝和城市商业银行的转型研究
- 篮球行进间运球教案
- 气候突变的定义和检测方法
- 财经大学基坑开挖应急预案
- 高大支模架培训演示
- 一种改进的稳健自适应波束形成算法
- 2-3-鼎视通核心人员薪酬股权激励管理手
- 我国电阻焊设备和工艺的应用现状与发展
- MTK手机基本功能覆盖测试案例
- 七年级地理教学课件上册第四章第一节




