.NET 代码规范学习
我是个比较自由的人,不喜欢受太多的束缚,有时候做一些事情,喜欢根基自己的想法去做,只要我认为对的我会坚持下的!但是随着学习的不断深入,代码的编写规范,让我越来越感觉到它的重要性。保证代码的一致性,会使我们自己写的代码阅读性很强,便于交流和维护,更直接一点说可以让我们避免很多不必要的麻烦,带来很大的经济效益!下边我谈谈.NET代码规范的学习:一,注释规范1,自建代码文件注释:对于自己创建的代码文件(如函数、脚本),在文件开头,一般编写如下注释:/*************************************************作者:小组:说明:创建日期:版本号:**********************************************/2,标准注释:在模块、类、属性、方法前一行添加注释,以便调用的时候提示用户下以方法声明做例子:///<summary>///depiction:<对该方法的说明>///</summary>///<paramname="<参数名称>"><参数说明></param>///<returns>///<对方法返回值的说明,该说明必须明确说明返回的值代表什么含义>///</returns>如果模块只进行部分少量代码的修改时,则每次修改须添加以下注释:///修改人:///修改日期:< YYYY-MM-DD >///备份:/* 原代码内容*/将原代码内容注释掉,然后添加新代码使用以下注释:///添加人:///添加日期: <YYYY-MM-DD>代码内容///结束:对于重构的类文件,需要对原来的类文件做备份,然后放在同级目录下,在原有文件名后面添加后缀"_BAK",以便日后版本升级时整理源码。3.代码中的注释:代码间注释分为单行注释和多行注释:单行注释://<单行注释>多行注释:/*多行注释1多行注释2多行注释3*/代码中遇到语句块时必须添加注释(if,for,foreach,……),添加的注释必须能够说明此语句块的作用和实现手段(所用算法、循环条件、不同分支的意义等等)。这是添加注释的学习,添加适当的注释,会使你的代码就像课文一样容易读懂。下边看第二部分。二,命名规范:总体来说需要做到这几点:a,名字应该能够标识事物的特性,并且与业务挂钩。b,名字一律使用英文单词,而不能为拼音。c,名字可以有两个或三个单词组成,但不应多于4个,控制在3至30个字母以内。d,在名字中,多个单词用大写第一个字母(其它字母小写)来分隔。例如:IsSuperUser。在具体任务开发中,如果有特定的命名约定,则在相应的软件开发计划中予以明确定义及上报质量管理部审计组。分点来说具体的:1,命名概括:Pascal命名法:所有单词的首字母都大写,其他字母小写Camel命名法:除首字母外,其他单词的首字母大写,其他字母小写在类属性的名称中包含类名是多余的,如 Book.BookTitle。而是应该使用 Book.Title。在变量名中使用互补对,如 min/max、begin/end 和 open/close。布尔变量名应该包含 Is,这意味着 Yes/No 或 True/False 值,如 fileIsFound。即使对于可能仅出现在几个代码行中的生存期很短的变量,仍然使用有意义的名称。仅对于短循环索引使用单字母变量名,如 i 或 j。文件名要和类名相同,一般情况下一个类一个文件,文件名遵从Pascal命名法,无特殊情况,扩展名小写,使用统一而又通用的文件扩展名: C# 类 .cs。2,缩写:为了避免混淆和保证跨语言交互操作:不要将缩写或缩略形式用作标识符名称的组成部分。例如,使用 GetWindow,而不要使用 GetWin。不要使用计算机领域中未被普遍接受的缩写。在适当的时候,使用众所周知的缩写替换冗长的词组名称。例如,用 UI 作为 User Inte易做图ce 缩写,用 OLAP 作为 On-line Analytical Processing 的缩写。在使用缩写时,对于超过两个字符长度的缩写请使用 Pascal 大小写或 Camel 大小写。但是,应当大写仅有两个字符的缩写,如,System.IO,而不是 System.Io。对于某些名字中单词都比较长的情况,可以自行写一个缩写名字(名字中的关键字不能缩写),将所有的缩写做一个说明文件,放在同级目录下的开头。3,命名空间:命名命名空间时的一般性规则是使用公司名称,后跟技术名称和可选的功能与设计,如下所示: CompanyName.TechnologyName[.Feature][.Design]命名空间使用Pascal大小写,用逗号分隔开。TechnologyName 指的是该项目的英文缩写,或软件名。命名空间和类不能使用同样的名字4,类使用 Pascal 大小写。使用全称避免缩写,除非缩写已是一种公认的约定,如URL、HTML。对于某个命名空间、文件夹下类名中单词都比较长的情况,可以缩写(名字中的关键字不能缩写,其他单词只取首字母),将所有的缩写做一个说明文件,放在同级目录下的开头。不使用下划线( _ )。类的命名要见名知意。数据访问层:类名后加DAL(Data Access Layer)。注意:在.NET中没有DAO的概念,DAO是在Java中出现的,表示一种数据访问方式。业务逻辑层:类名后加BLL(Business Logic Layer),如果类名特长可以使用缩写,但在文档中要注明。缩写的全称和意义。界面层:asp中针对页面的类,不用添加UI前缀或后缀。实体层:实体类后加Entity做结尾,如果其他方法中,调用实体类作为参数,参数前面加小写en,如果参数过长,使用缩写,但在文档中也要注明。如果系统规模比较大,应该考虑,对类进行分组放到不同的文件夹中,便于维护,把握粒度。5,接口:使用 Pascal 大小写。在原有类名基础上加“I”,如:IUserDao不使用下划线(_)。当类是接口的标准执行时,定义这一对类/接口组合就要使用相似的名称。两个名称的不同之处只是接口名前有一个I前缀。或者在实现类名后加“Impl”后缀。public inte易做图ce IComponent{}public class Component : IComponent{}public class ComponentImpl : IComponent{}6,枚举 (Enum)对于 Enum 类型和值名称使用 Pascal 大小写。命名不能缩写,枚举内的内容可以缩写。命名禁止加Enum 后缀。7,参数参数名称使用Camel大小写参数名称可缩写8,方法以动词开头。使用 Pascal 大小写。禁止缩写,除非名词本身含有缩写。如:AddStudentMgr ()9.属性(property)以名词或形容词命名。使用 Pascal 大小写。禁止缩写。10,委托以名词或形容词命名。使用 Pascal 大小写。禁止缩写。如果与事件(event)关联,则名称命名使用EventHandler后缀,否则其他名称均以Delegate后缀结尾。如// 普通委托定义public delegate void SetMethodDelegate(string name);//委托与事件关联public delegate void MouseEventHandler(objectsender, MouseEventArgs e);11,补充:Web开发 , ASP.Net ,
上一个:.NET中事务的隔离级别
下一个:数据访问与ADO.NET
- 更多asp疑问解答:
- asp正则过滤重复字符串的代码
- 用asp过滤全部html但保留br类似的符号
- 会asp,但感觉asp要过点,想学php。但我一般做的都是小公司的站,用access数
- PHP的空间可以用ASP的源代码吗?
- 以前做asp程序,现在应该怎样发展?是学.net还是php
- 以前做asp程序,现在应该怎样发展?是学.net还是php
- 想做一个市级的人才网acess,sql数据库,语言asp,jsp,php分别用哪种好
- jsp,asp,php 区别
- 我想找一个有比较多漏洞的网站的源码,比如可以asp,php注入等都可以。供学习研究用。请提供下载地址。。
- 现在候找人做个网站,用ASP,还是PHP语言去做好
- asp,php ,jsp,.net 对于做网站前台的重要吗?
- asp和php的区别是什么?
- 我是新手SEO菜鸟 请问wp dw php asp cms myspl dede 这些软件应该如何区分呀?
- 网页制作相关的三种语言:ASP JSP PHP那个好点,简单点?
- 网页制作相关的三种语言:ASP JSP PHP那个好点,简单点?