您好,欢迎访问三七文档
文档编号:SW_SE_GD_030江苏微软技术中心JiangsuMicrosoftTechnologyCenterJSMSTCC#编码规范(第1.0版)JSMSTCC#编码规范第1页改版履历版本号发行日更改对象·更改内容拟制审查批准JSMSTCC#编码规范第1页目录1.概述....................................................................................................................................11.1.规范的制定原则..................................................................................................11.2.规范的遵守原则..................................................................................................11.3.术语定义............................................................................................................12.必须遵守的部分..................................................................................................................12.1.文件的命名规则..................................................................................................12.2.类的命名规则.....................................................................................................22.3.方法的命名规则..................................................................................................22.4.常量....................................................................................................................22.5.变量....................................................................................................................22.6.参数....................................................................................................................32.7.代码的格式.........................................................................................................32.8.注释....................................................................................................................32.9.声明....................................................................................................................43.建议遵守的部分..................................................................................................................44.参考资料.............................................................................................................................4JSMSTCC#编码规范第1页1.概述1.1.规范的制定原则1、参照微软在VS.NET中,C#既有的规范来制定2、方便代码的交流和维护。3、不影响编码的效率,不与大众习惯冲突。4、使代码更美观、阅读更方便。5、使代码的逻辑更清晰、更易于理解。1.2.规范的遵守原则1、如果是软件外包项目,并且对方制定了代码的编写规范,则首先要遵守对方的编码规范。如果对方没有明确指定代码的编码规范,则需要遵守本公司自己的编码规范。2、本公司的编码规范分为两部分,第一部分是必须遵守的部分,第二部分是建议遵守的部分。一般情况下,两部分都要遵守,但在项目进度非常紧张的情况下,第二部分可以适当放宽。1.3.术语定义Pascal大小写将标识符的首字母和后面连接的每个单词的首字母都大写。可以对三字符或更多字符的标识符使用Pascal大小写。例如:BackColorCamel大小写标识符的首字母小写,而每个后面连接的单词的首字母都大写。例如:backColor2.必须遵守的部分包括文件/类的命名规则,方法的命名规则,常量、变量、参数等的定义,代码的格式、注释等2.1.文件的命名规则文件的命名采用Pascal命名规则,无特殊情况,文件的扩展名小写。文件的扩展名使用统一而且通用的扩展名,如C#类使用扩展名:.csJSMSTCC#编码规范第2页2.2.类的命名规则类的名字必须是有意义的,且与类实现的功能或业务逻辑相关的名字。除接口类的其他所有类(包括普通类、抽象类等)都采用Pascal命名法,且主类的名字与文件名一致。接口类有自己特殊的命名规则:类的前缀为“I”,后面连接Pascal命名法所起的有意义的名字。同样,类名与文件名相同,如:IFormatable。2.3.方法的命名规则按照C#语言本身的原始特征,方法的命名采用Pascal命名规则。另外,方法的命名应该说明的是“什么”,而不是“如何”;方法的名称应该足够长以便有一定的意义,又应该足够短,以避免冗长。如:WriteToFile()。2.4.常量所有的常量都必须是大写字母组成,如果常量有几个单词组成,则单词之间用下划线“_”进行连接,如:privateconststringUSER_NAME=“abc”;2.5.变量变量在定义的时候,需要根据变量的数据类型添加不同的前缀(前缀全部小写),但不需要区分其作用域。另外,变量的命名规则采用Pascal命名规范。如:privatestringstrName=“”。另外,C#中各常用的变量的前缀如下表所示:类型含义缩写举例bool真/假isisOverFlowbyte8位无符号整数类型bytbytCountchar字符类型chrchrFlagdecimal金融计算所用的数字类型decdecAmountdouble双精度浮点类型dbldblAmountfloat单精度浮点类型fltfltAmountint整形intintCountlong长整形lnglngWeightsbyte8位有符号整数sbtsbtCountshort短整形shtshtAmountstring字符型strstrNameuint无符号整型uituitCountulong无符号长整形ulgulgCountushort无符号短整形ustustCountJSMSTCC#编码规范第3页2.6.参数在方法定义中的形参,采用Pascal命名方法,不需要根据数据类型来添加前缀,作为调用方法时传递的实参,则采用上面变量的命名规则,使用数据类型前缀+Pascal命名方法。如:voidSetName(StringName){……}调用的时候,可以如下:stringstrName=“abc”;SetName(strName);2.7.代码的格式代码的格式包括缩进、换行、空行、空格等,为了不影响编码的效率,在此只作如下规定:1、空格、空行不做严格的固定,以使代码清晰为基本原则。空行不影响程序的运行,但可以使代码看起来清晰,增加可读性,因此可以适当的多用。2、代码的缩进建议使用tab键进行控制,tab键的大小设置为4个空格。每个层次都要进行缩进。3、换行,掌握的原则是不要使一行代码特别的长,再不产生严重歧义或增加阅读难度的情况下,尽量控制在120列之内,以方便代码的打印。另外,换行的原则是,在逗号后,操作符前换行,换行与首行要保持一个单位的缩进。4、{、}必须单独在一行上,且上下对齐。5、if,while,do,try-catch-finally等语句后必须有{},即使里面只有一条语句或为空,且遵循{、}单独成行的原则。2.8.注释要养成良好的代码注释习惯,通常,注释要占实际代码总行数的1/3,同时,要在编写代码前或编写代码的同时进行代码的注释,不要事后补写注释。注释分为多行注释和单行注释,我们的原则是:在类和方法的前面,要写多行注释,在定义类的全局变量/常量,以及方法的内部,使用单行注释。注释的前面与代码之间要有空行。即使是单行注释,我们鼓励都要单独一行,不鼓励在语句的后面使用注释,当然,在变量定义的后面使用注释也是允许的,但不建议这么做。另外,在编写注释的时候,建议使用C#自己的注释风格,即在类的前面和方法的前面使用“///”进行注释。JSMSTCC#编码规范第4页2.9.声明每行只定义一个声明,多个声明要分多行来定义。如:intintAge,intWeight;//不推荐应使用如下的定义形式:intintAge;intintWeight;声明的位置:变量要在块的开始的地方集中进行声明,不要何时用到何时临时定义。3.建议遵守的部分本部分在编写的过程中,可能对于新手来说,会降低编码的效率,但遵守本部分规范会使代码的美观性和易读易维护性得到提高,因此,在项目进度不是很紧张的情况下,建议遵守。本部分暂未整理。4.参考资料略
本文标题:C#编码规范
链接地址:https://www.777doc.com/doc-6372367 .html