可编辑精品代码书写规范(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.模板类.........................................................................................................................................8可编辑精品1编写目的为了保证编写出的程序都符合相同的规范,保证一致性、统一性而建立的程序编码规范。编码规范对于程序员而言尤为重要,有以下几个原因: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方法位置方法需要将相关的内容归类在一起。我们分为下面几个部分:delegateandsubtype,field,property,ctor,init,dtor,method,function这里6个部分表示了一个类最复杂情况所包含的内容。把相关内容放在一起也利于我们自己查找和维护。下面介绍一下每个部分应该书写什么内容。(1)delegateandsubtype类中用到的委托,或者子类型的声明,子类型不要声明为平级,而是声明为包含的类。(2)field成员变量,尽量的都声明为私有,事件声明为其他访问级别。可编辑精品(3)property属性书写在这里,属性的访问器get和set的访问级别可以不一样,例如publicintIntProperty{publicget{returnintVar;}internalset{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模块(类)注释规范模块开始必须以以下形式书写模块注释:///summary///定义某某类的方法////summary///seecref=Author作者/see///seecref=Emailemail@e-citycard.com/see///seecref=Data2010-12-17/see如果模块有修改,则每次修改必须添加以下注释:///remark备注版本修改信息,修改了哪些,时间,每次依次增加remark/remark4.2类属性注释规范在类的属性必须以以下格式编写属性注释:///summary///属性说明////summary可编辑精品4.3方法注释规