版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、c#编码规范(团队开发的协作的基本要求)2009年12月01日 星期二 13:23一. 目标1.安全代码完成所需的功能之余,不要产生负作用,要稳定可靠.2.易读类,实例,成员变量,成员函数的命名一目了然3.美观尽量统一项目组内人员的编程风格,保证一致性,统一性.二.具体注意事项.(一命名1.命名原则(1所有的函数(变量/类/文件名应该代表其实际的作用.应该使用具有意义的单词或多个词组合,但不要使用人名,项目组名.(2所有的函数(变量/类名一律使用英文.(3使用多个单词时不需要使用连线(如下划线(4多个词组合较长时,可以使用单词的缩写.(5不得使用非常相近的名字来表示几个不同含义的函数(变量/类
2、.(6命名时请考虑名字的唯一性和含义的准确性.(7命名采用三种格式,Pascal(大小写,Camel(大小写混合,首字母全部大写格式如:ID2.变量的命名(1变量名一般由"前缀+类型修饰+代表变量含意的英文单词或单词缩写"等部分组成.如:*前缀(以下划线分割: t_:表示线程的全局变量.如:t_nCount m_:表示类成员变量(包含类表态变量如:m_dwFlags
3、0; _ 局部变量以”_”开头,如 _userName*主体使用一个或多个单词表示变量代表的确切含义,参见下面的大小写规则。*类型修饰(小写字母:nlsufbbychszstrdouintlongshortuintfloatboolbytecharcharStringdouble(2针对异常捕获过程中的Exception变量命名,在没有冲突的情况下,统一命名为 e;(3使用C# 的特有类型,而不是System命名空间中定义的别名类型。如:
4、int age; string name; object contactInfo; 而不是:
5、160; Int16 age; String name; Object contactInfo;这么做是基于如下两点原因:(1)规范性和一致性;(2)便于跨语言平台的移植。3.函数的命名(1使用动宾词组表达函数所做的事.命名采用Pascal形式如:ShowUser
6、Info(,BoundGridView(等(2同名的函数(重载函数在功能上应该完全相同,在参数上的差别也应一目了然.(3不得出现名字非常相近但功能不符的函数.如:CreatePage1(,CreatePage2(等.4.类命名(1名字应该能够标识事物的特性.如Public class Employee(2名字尽量不使用缩写,除非它是众所周知的.(3名字可以有两个或三个以上单词组成,但通常不应多于三个。(4在名字中,所有单词第一个字母都大写。缩写都要大写。(5不要使用下划线连接符(_.如:public classs EmployeeComputeSalary 即采用Pascal大小写形式。5.控
7、件命名规则控件命名=Web控件缩写前缀+"_"+变量名控件LabelTextBoxListBoxDropDownListGridViewDataGridDataSet缩写lbltbxlbxddlgvdgds控件PanelSqlDataSourseDataListRepeater缩写pnlsdsdlrpt 6.文件命名(1文件命名要具有实际意义。(2源文件应尽量使用8.3格式,文件名只能包含字母,数字和下划线,不得使用其他的字母,超长的文件名应使用缩写方式减少文件名的长度,(视具体情况而定);*缩写一般可以去掉无意字母以及不发音字母。*单词的
8、首字母一般应该保留。*当一个单词必须编写成一个字母时,应该选用最有代表性的字母或首字母。*多音节的单词可以去掉后面的音节而只保留有意义的音节。*可以使用一些谐音表示一个单词,如2表示to,4表示four等等,(3当单词数量少,字母少时不需要缩写词。(4临时文件必须调用系统函数生成,禁止使用固定文件名,一般情况下,临时文件应在系统临时目录下(通过系统函数取到临时目录名)生成。7参数的命名一般要采用大小写混合格式。如protect bool login(string userName,string userPass(二代码格式书写规范1代码书写格式(1)所有的缩进TAB键为4个空格,每个单词的首字
9、符大写,其余小写。(2)在代码中垂直对齐左括号和右括号。例: if(x=0 Response.Write("用户名必须输入!" 不允许以下情况: &
10、#160; if(x=0 Response.Write("用户名必须输入!"或者 if(x=0Response.Write("用户名必须输入!"(3)在大多数运算符之前和之后使用空格,这样做时不会改变代码的的意图却可以使代码容易阅读。例:int j = i + k;而不应写为:int j=i+k;(4)缩写SQL语句时,对于关键字使用全部大写,对于数据库元素(如表,列和视图)使用大小写混合)。(5)将每个主要的SQL子句放在不同的行上,
11、这样更容易阅读和编辑语句。2注释的写法(1)在你劳神的地方请加上详细的注释说明,除了最简单的存取成员变量的Set/Get成员函数之外,其余大部分的函数写上注释是良好的习惯,尽量使你的程序让别人很容易看懂。(2)大多的注释会使程序很难看,但一些复杂的算法和数据结构和数据结构处还是要加上注释的,这样别人就容易看懂,否则时间长了,你自己都未必能看明白了。(3)如果是对某一段程序(算法/结构)的注释,在程序头直接用/再空一格进行说明,一行不要超过80个字符。(4)为了防止在阅读代码时不得不左右流动源代码编辑器,每行代码或注释在不得超过一显示屏。(5)使用连续的多个/表示注释行(不要超过80字符)。(6
12、)文件头部应有注释,简单描述文件的内容(7)对于程序中的比较关键的算法和函数,必须加注释。3cs文件的书写(1)各个部分应使用注释行和空行分割,并在必要的地方写上注释。(2)函数之间用注释各空行分割。中间的内容缩进一个TAB三.其他1.变量(1float和bool禁止用"="判断.bool应该用逻辑运算关系符,而float应该用差值区间来判断"相等"(2类型转换一律用显示类型转换(3类型的长度一律用sizeof(获得;(4当声明一个变量时,务必要自已初始化一下变量;2.函数(1功能单一,函数名要名符其实.(2要易懂,实现时不要过分追求技巧,优化放到后面去
13、做.(3长度一般禁止超过200行.(4要检查输入值是否合法,实现(成员函数时务必要求输入参数是在要求范围之内,尤其你定义的(成员函数给别人调用时,要判断其合法性.(5调用函数时要严格按照接口规范调用,调用后要判断执行情况,并做适当的错误处理(尔后会给出错误和异常处理规范(6尽量避免整块复制代码段,如果出现这样的情况要分析原因,如果这段代码完成独立的功能,应考虑使用函数,否则,应考虑使用宏定义,否则因为修改引起的不一致往往是错误的根源.(7除极其简单的函数外,其他的函数在稿处必须加上FMAT_TARCE(,参见错误异常处理规范.(8函数的出口尽量唯一,最好在出口处加上FMAT_TRCE(;(9写代码时,尽量减少堆的分配次数,能使用Stack的尽量使用Stack(10函数编写必须精练,消除冗余的代码,删除不用的变量(11if/while等语句中和条件表达式的运算结果必须为显式的Bool量(12禁量少使用goto语句()附:标识符 大小写方式 示例 标识符大小写规则标识符大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB 1502-T 027-2024多晶硅生产单位产品能源消耗限额
- 2024-2025学年江苏省百校高三上学期10月联考物理试卷和答案
- 农药制造中的新型啶类技术研究考核试卷
- 信息系统的旅游信息管理与在线预订考核试卷
- 水利工程在农村教育和文化事业发展中的支撑作用考核试卷
- 制鞋业电商渠道开拓与运营考核试卷
- 智能家居在家庭社交中的创新应用与实践考核试卷
- 辽宁省沈阳市沈北新区2024-2025学年四年级上学期期中英语试卷
- 危险品包装中的可降解与可回收材料创新考核试卷
- 城市轨道交通的智慧出行与一体化应用研究考核试卷
- 经营分析报告案例-麦肯锡风格
- 难治性高血压-课件
- 烟花爆竹经营单位主要负责人安全培训
- 2023春国开会计实务专题形考任务1-4题库及答案汇总
- 可疑值的取舍-Q检验法
- 生物信息学(上海海洋大学)知到章节答案智慧树2023年
- 核磁共振T临床应用
- 文件与文件夹测试题(含参考答案)
- 电工安全培训课件
- 维修工程技术标
- 《长津湖》电影赏析PPT
评论
0/150
提交评论