




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
代码书写规范(C#.NET)Version:1.0目录目录类书写标准(C#.NET)1目录11 目的22 编码规范22.1 代码格式22.2 顶部声明内容32.3 方法位置32.4 #Region使用43 注释规范53.1 模块(类)注释规范53.2 类属性注释规范53.3 方法注释规范53.4 代码间注释规范64 命名规范74.1类命名规范74.2 成员变量74.3 局部变量74.4 资源命名74.5 其他命名84.6 命名注意85. 模板类81 编写目的为了保证编写出的程序都符合相同的规范,保证一致性、统一性而建立的程序编码规范。 编码规范对于程序员而言尤为重要,有以下几个原因: 1. 一个软件的生命周期中,80%的花费在于维护。2. 几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护。3. 编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码 。为了执行规范,每个软件开发人员必须一致遵守编码规范!2 目录结构规范(1) 目录建立的原则:以最少的层次提供最清晰简便的访问结构。(2) 目录的命名以小写英文字母,下划线组成。(参照命名规范)。(3) 根目录一般只存放index.htm以及其他必须的系统文件;每个主要栏目开设一个相应的独立目录;根目录下的images用于存放各页面都要使用的公用图片,子目录下的 images目录存放本栏目页面使用的私有图片。(4) 所有JS,ASP,PHP等脚本存放在根目录下的scripts目录。(5) 所有CGI程序存放在根目录下的cgi-bin目录。(6) 所有CSS文件存放在根目录下style目录。(7) 每个语言版本存放于独立的目录。例如:简体中文gb;(8) 所有flash, avi, ram, quicktime 等多媒体文件存放在根目录下的media目录。3 编码规范3.1 代码格式 所有的缩进以Tab代替空格。Region表示相关的内容,避免分类过细,请按照前一部分列出的进行分类。函数内部或者类的内部,可以嵌套region使用。尽可能的使用此标签折叠相关内容。折叠的好处是我们可能打开某个部分。先看到每个region,对程序有个认识,然后根据需要展开具体的块。如果需要全部展开,可以使用快捷键:ctrl+m,ctrl+o。在代码中垂直对齐左括号和右括号。 if(x=0) Response.Write(用户编号必须输入!); 不允许以下情况: if(x=0) Response.Write(用户编号必须输入!); 或者: if(x=0) Response.Write(用户编号必须输入!); 这样更容易阅读和修改语句。3.2 顶部声明内容文件的顶部可以包含文件的测试数据、注释、作者、创建时间、修改人、修改时间。但不强行规定。但涉及到数据的,需要包含测试数据。注释以/的方式添加多个单行注释。/*空气环境监测信息管理_数据业务逻辑层*/描述:滁州市环境地理信息系统/功能:三层架构中数据层业务实体/开发者:滁州学院 */开发时间:2010.12.12/*空气环境监测信息管理_数据业务逻辑层*/3.3 方法位置方法需要将相关的内容归类在一起。我们分为下面几个部分:delegate and subtype,field,property,ctor,init,dtor,method,function这里6个部分表示了一个类最复杂情况所包含的内容。把相关内容放在一起也利于我们自己查找和维护。下面介绍一下每个部分应该书写什么内容。(1) delegate and subtype类中用到的委托,或者子类型的声明,子类型不要声明为平级,而是声明为包含的类。(2) field成员变量,尽量的都声明为私有,事件声明为其他访问级别。(3) property属性书写在这里,属性的访问器get和set的访问级别可以不一样,例如public int IntProperty public get return intVar; internal set intVar = value; (4) cotor,init,dtor构造函数,初始化和释放。如果是窗体,对应的OnLoad,OnHandleCreate,OnActive的方法,Form1_Load,Form1_Active的事件响应方法应当卸载这里。如果是控件,对应的OnLoad,OnHandleCreate,OnActive,OnParentChanged 的方法应当写在这里。如果是一般的类,Dispose接口的实现,析构函数,释放函数都应当写在这里。(5) method书写类对外的主要接口方法,例如Open,Close,Write,Read之类,对象直接的抽象。(6) function书写可能重复的方法,例如多个Open方法都要做CheckOpenStatus,这个操作用户不会直接使用,或者不常用,则写在这里。4 注释规范注释规范包括:模块(类)注释规范、类的属性、方法注释规范、代码间注释 4.1 模块(类)注释规范 模块开始必须以以下形式书写模块注释: / /定义某某类的方法 / /作者 / /2010-12-17 如果模块有修改,则每次修改必须添加以下注释: /备注版本修改信息,修改了哪些,时间,每次依次增加remark 4.2 类属性注释规范 在类的属性必须以以下格式编写属性注释: / /属性说明 / 4.3 方法注释规范 在类的方法声明前必须以以下格式编写注释 / / 说明: / / param name= / / / 4.4 代码间注释规范 代码间注释分为单行注释和多行注释: (7) 单行注释 / (8) 多行注释 /*多行注释1 多行注释2 多行注释3*/ (9) 注释说明A. 代码中遇到语句块时必须添加注释(if,for,foreach,),添加的注释必须能够说明此语句块的作用和实现手段(所用算法等等)。 对一个数值变量采用不是0,-1等的数值初始化,给出选择该值的理由。B. 不要每行代码,每个声明的变量都做注释在需要的地方注释。C. 如果因为某种原因使用了复杂艰涩的原理,为程序配备良好的文档和重分的注释。D. 对注释做拼写检查,保证语法和标点符号的正确使用简言之,要写清晰,可读的代码以致无须什么注释就能理解。5 命名规范5.1 类命名 (1) 名字应该能够标识事物的特性,一般采用:类型的缩写+功能例如:frmMain。 (2) 名字尽量不使用缩写,除非它是众所周知的。 (3) 名字可以有两个或三个单词组成,但通常不应多于三个。 (4) 在名字中,所有单词第一个字母大写,缩写都要大写。 (5) 例如 IsSuperUser,包含ID的,ID全部大写,如CustomerID。 (6) 使用名词或名词短语命名类。 (7) 少用缩写。 (8) 不要使用下划线字符 (_)。 (9) 接口(Interface)命名规范和类命名规范相同,唯一区别是 接口在名字前加上“I”前缀。例: interface IDBCommand; interface IButton; 5.2 成员变量命名可以使用2种方式之一: (1) 下划线+类型+功能:_isConnect(2) 小写字母开头的类型+功能:isConnect5.3 局部变量命名局部变量不要以下划线,大写字母开头5.4 项目资源命名字符串分类:“类型_内容分类1_内容分类2”,可以自己发挥,第一级要尽量的具有代表性,能涵盖的面大一些,第一级的类型数量尽可能少。现在我们只枚举了:Msg,Label,Filter这三种,为了大家,尽可能少点第一级类型。如果两级能描述清楚,就尽可能少,例如Msg_Error,Msg_Title_Notify5.5 其他命名图片:最好遵循前面的规则,类型+功能,例如imgLogo。文件:同上:fileAttribbool类型的变量前面要写is5.6 备注(1) 禁止中文命名(2) 无特殊要求,除非行业有缩写的拼音,否则禁止使用拼音命名。6. 模板/*空气环境监测信息管理_数据业务逻辑层*/描述:滁州市环境地理信息系统/功能:三层架构中数据层业务实体/开发者:滁州学院 */开发时间:2010.12.12/*空气环境监测信息管理_数据业务逻辑层*/using System;using System.Collections.Generic;using System.Text;namespace www / /滁州市环境地理信息系统,空气环境监测信息管理_数据业务逻辑层/ public class Class1 #region delegate and subtype #endregion / / 对该方法的说明 / / param name=参数说明1 / param name=参数说明2/ 对方法返回值的说明,该说明必
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中级经济师职称考试模拟试题及答案
- 2025年农业专家招聘考试知识点详解与模拟题答案解析
- 披萨店员工安全培训课件
- 2025年聚醚砜PES项目合作计划书
- 内蒙古自治区呼伦贝尔市牙克石市联考2024-2025学年七年级上学期期末考试数学试题(含部分答案)
- 江苏省南京市2024-2025学年九年级(上)物理第一次月考试卷(含答案)
- 2025年碳酸二甲酯合作协议书
- 抗菌药物合理应用原则
- 福建省南平市部分学校2025-2026学年高二上学期质量检测(开学联考)语文试卷(含答案)
- 2024-2025学年江西省上饶市鄱阳县人教版三年级下册期末考试数学试卷(含答案)
- 高三一轮复习课件
- 驾驶员安全教育培训考试试卷含答案
- 校园基孔肯雅热防控措施课件
- 2025年江西省高职单招文化统一考试真题及答案(网络版)
- 多媒体技术复习题及参考答案
- 北师大版义务教育小学数学教材知识体系整理
- 2023全国大学生数学建模竞赛D题
- PCB常见不良品图片及改善措施汇总
- 《正确认识广告》课件(共21张)
- 开学第一课铸牢中华民族共同体意识课件
- WeeFIM儿童功能独立量表详解
评论
0/150
提交评论