j2ee代码书写基础规范.docx

上传人:夺命阿水 文档编号:480159 上传时间:2023-07-19 格式:DOCX 页数:19 大小:32.29KB
返回 下载 相关 举报
j2ee代码书写基础规范.docx_第1页
第1页 / 共19页
j2ee代码书写基础规范.docx_第2页
第2页 / 共19页
j2ee代码书写基础规范.docx_第3页
第3页 / 共19页
j2ee代码书写基础规范.docx_第4页
第4页 / 共19页
j2ee代码书写基础规范.docx_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《j2ee代码书写基础规范.docx》由会员分享,可在线阅读,更多相关《j2ee代码书写基础规范.docx(19页珍藏版)》请在课桌文档上搜索。

1、j2ee代码书写基础规范密级:公开代码书写基础规范制定日期:2023年1月中航国际金网公司代码书写基础规范-1-版本历史简要描述信息日期版本作者2023-1-141.0创建该编码规范文档高正代码书写基础规范-2-目录1前-3-1.1版权声明3-规范等级说明-3一规范实施建议-3-1.21.32代码风格规范-2.1行-3-代码行-3-缩进对齐4-2.22.33命名规范-4-3.1项目的命名-4-包的命名4一类的命名4-接口的命一5-方法的命名一5一变量的命名一5-常量的命名一5-jsp文件的命名-5-css文件的命名一5一其他文件的命名-6-3.23.33.43.53.63.73.83.93.1

2、04注释规-6-4.1通用注释规则-6一类的注释6-方法的注释一6-失效代码的注释-7一变量、常量的注释-7一分支语句的注释-7一特殊代码的注释-8-4.24.34.44.54.64.75编程规范-85.1变量-8-常量-8-类-8-方法-8-语句-9-其他规范9-5.25.35.45.55.6代码书写基础规范-3-1前言本文档反映的是中航国际金网公司开发团队的编码规范。1.1版权声明本规范由中航国际金网公司技术专家委员会制定、维护。1.2规范等级说明依据实际状况,分为2类等级规范:必要:默认级别,要求全部项目中的全部成员遵守。对于新建或优化改造系统,开发维护人员必需严格遵守和保持。对于历史系

3、统和小范围调整的系统(2023年前上线的系统),开发维护人员可以依据实际状况进行实施。举荐规范(该条目标记为【举荐】):举荐规范即非强制规范,只是举荐和激励开发维护人员实施的编码规范,各个项目依据实际状况执行。1.3规范实施建议该规范是以提高软件开发质量和效率为目标,辅以IDE等开发工具为保障,逐步改进编码规范化水平。对于格式规范、注释规范等部分规范的要求,可以通过运用eclipse自带的Format方法(快捷键:CtrlShift+F)进行自动格式化,可以提高开发效率又符合编码规范。编码规范文档本身须要定期不断的修正和完善,以符合实际开发规范的要求。2代码风格规范注:为了代码风格统一,可以运

4、用eclipse自带的Format方法(快捷键:Ctrl+Shift+F)进行代码的缩进和排版,此时,Activeprofile运用eclipse默认的ECliPSebuilt-in格式。设置过程:Window-Preferences-Java-CodeStyle-Formatter-Activeprofile设置为Eclipsebulid-ino2.1 空行(1)、方法之间要加空行。(2)、在一个方法体内,逻揖上亲密相关的语句之间不加空行,其它地方应加空行分开【举荐】。2.2 代码行(1)、一行代码只做一件事情,如只定义一个变量,或只写一条语句。这样的代码简洁阅读,并且便利于写注释。(2)、

5、赋值操作符、比较操作符、算术操作符、逻辑操作符、位操作符,等二元操作符的前后应当加空格。代码书写基础规范-4-2.3缩进对齐(1)、jsp页面中,div、table等各种标签均要依据其嵌套层次缩进。(2)、java代码运用Tab缩进,不允许运用空格键进行缩进,每按一次Tab键缩进4个字符。3命名规范(1)、全部的标识符都只能用ASCII字母(A-Z或a-z)、数字(0-9)和下划线组成,且满意java规范以及不能取java保留字。(2)、简洁,最短的长度获得最大的信息量。从命名中可以直观看懂其定义和用途,否则必需增加注释说明。(3)、在同一系统内命名必需保持统一,避开出现类似如下示例中的状况。

6、示例:项目组id,变量定义:pgldprojectGroupIdidProjectGroupidProjGroup(4)、特殊约定名词可以干脆运用缩写等,但必需在设计文档中精确说明。(5)、避开名字过长、命名采纳英文缩写,避开运用汉语拼音【举荐】。以下状况应当避开:(1)、程序中不要出现仅靠大小写区分的相像的标识符。(2)、程序中不要出现标识符完全相同的局部变量和全局变量,尽管两者的作用域不同而不会发生语法错误,但会使人误会。(3)、尽量避开名字中出现数字编号,如Valuel,Value2等,除非逻辑上的确须要编号。(4)、任何时候都不要出现1,1,0,0等简洁混淆的字母。3.1项目的命名由系

7、统架构师确定项目的英文简称。3.2包的命名(1)、必需全部小写。(2)、源代码运用cn.ecatic开头;(3)、测试代码运用test.ecatic开头;(4)、每层的名称尽量运用单个单词【举荐】示例:cn.ecatic.ecram,system,dao3.3类的命名(1)、采纳大小写混合的方式,每个单词的首字母大写。(2)、各层的类的命名规定如下:entity层:跟数据库表名称保持一样。示例:Dictionaryodao层:实体名+Dao。示例:DictionaryDao0service层:实体名+Manager0示例:DictiOnaryManager。action层:实体名+Action

8、o示例:DictionaryAction0其他状况:依据具体状况命名。代码书写基础规范-5-3.4接口的命名同类的命名。3. 5方法的命名(1)、是一个动词或动词词组【举荐】。(2)、采纳大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。示例:publicStringBatchDelete()3.6变量的命名(1)变量名第一个字母小写,任何中间单词的首字母大写。(2)、变量名应简短且可以顾名思义。示例:nikeNameCreateDate0(3)、不要与类成员变量同名(get/Set方法与构造函数除外)。(4)、避开单个字符的变量名,除非是一次性的临时变量。临时变量通常被取名为i

9、,j,k,m和n,它们一般用于整型【举荐】;c,d,e,它们一般用于字符型;【举荐】。变量名不应以下划线或美元符号开头【举荐】。3.7 常量的命名常量命名全部大写,单词间用下划线隔开。3.8 jsp文件的命名(1)、全部是小写字母,单词间加横杠分割。(2)、列表页面为action前缀名称。若action的名称为AccompanyApplyAction,accompany-apply.jsp示例:则列表页名称为(3)、录入、编辑页面为action前缀名称+横杠+input。示例:若action的名称为AccompanyApp1yAction,则录入、编辑页名称为accompany-apply-i

10、nput,jsp(4)、其他页面跟action中所执行方法的return字符串有关。示例:若action的名称为AccompanyApp1yAction,内容为:则程序执行完view方法后所进入的jsp页面为accompany-apply-view-detai1.jspo3.9 css文件的命名对于web工程中主css文件命名为CSS.CSS,其他CSS样式文件,依据实际状况命名。publicStringview()throwsExceptionreturnview-detail;代码书写基础规范-6-3.10其他文件的命名依据实际状况来命名,建议采纳首字母小写,其他单词首字母大写的方式命名【

11、举荐】。4注释规范激励养成写代码前加注释或者边写代码边加注释的工作方法,添加注释有如下优点:(1)、对于项目经理或开发人员,可以在编写代码前先将函数流程的相关注释写出来,这样便于在实际编写代码前理清思路、深化对项目的了解和建立项目的全局观,特殊是对于比较困难的算法实现和较难的编程方法(如递归)实现有特别好的效果。假如发觉原先没有考虑清晰的地方,作出修改也比较便利,不用更改代码,可以削减时间的损耗。(2)、可以规范代码,统一公司不同编程人员的编程风格。(3)、增加代码的可阅读性以及可维护性,使其他人能够简洁明白的运用或修改这些代码。(4)、编程人员在程序中的关键位置添加注释,有助于针对不同的功能

12、部分检查BUG0(5)、注释假如加得具体,可以帮助新员工更好的学习和理解编程思想和方式。3.10 用注释规则(1)、注释要运用中文,清晰、易懂(2)、注释与代码同步,修改代码的同时也要修改相应的注释。(3)、对于不建议运用的类或者方法,必需在他们的注释中增加deprecatedoJavaDoc注释说明。3.11 的注释(1)、位置:放于package定义之后,类定义之前。(2)、目的:简洁概述该类作用。3.12 法的注释(1)、位置:放于方法定义之前。(2)、目的:简洁概述该方法作用,包括其参数、返回值等的注释。(3)、若方法有参数或返回值,则注释中依据参数中变量名的易懂程度来确定是否包含相应

13、的ParanI和3111171。若变量名很直观易懂,则不需ParaIn。禁止仅摆放一堆空的标签,而不注释。author对类的说明,标明开发该类模块的作者version对类的说明,标明该类模块的版本See对类、属性、方法的说明,参考转向,也就是相关主题Param对方法的说明,对方法中某参数的说明return对方法的说明,对方法返回值的说明exception对方法的说明,对方法可能抛出的异样进行说明deprecated对类或方法的说明,该类或方法不建议运用代码书写基础规范-7-(4)、对自动生成的get/set方法不须要添加注释。(5)、假如方法允许null作为参数,或者允许返回值为null,必需

14、在注释中说明。假如没有说明,方法的调用者不允许运用null作为参数,并认为返回值是null平安的。注:对于已定义好的方法,在方法的声明的上一行,可以干脆输入/*,然后回车,eclipse可自动生成该方法的注释模板。举荐的注释内容:【举荐】对于该方法假如存在契约,必需写明它的前置条件、后置条件。对于调用困难的方法尽量供应代码示例。对于已知的Bug须要声明。在本方法抛出的异样尽量用throws说明。3.13 效代码的注释对一块短暂不启用的代码,每行都用/进行注释。注:这里并不是指垃圾、无用的代码,只是短暂不启用或短暂不明确的代码。当这块代码复原实效时,可选中该代阿曼示例:/if(1=D/假如1与1

15、相等的时候Stringcodel;/else/假如1与1不相等的时候Stringcode2;/4.5变量、常量的注释变量、常量注释必需写在变量、常量定义之前或同一行中,简洁描述其代表的意义。对于自循环所用的变量(i,j,k,)可以不须要注释。示例:StringCommitFlag;提交标记4.6分支语句的注释若有必要,则在分支语句代码的下一行进行注释,来简洁描述该分支条件的意义。示例:if(I=I)假如1与1相等的时候else/假如1与1不相等的时候.代码书写基础规范-8-4.7特殊代码的注释(1)、代码质量不好但能正常运行,或者还没有实现的代码用ToD0:声明内容。(2)、存在错误隐患的代码

16、用FIXME:声明。注:这类代码是指在时间等客观状况下,当前先不予解决,但留待以后来解决的代码。5编程规范5.1变量(1)、一行只声明一个变量或常量。不能一个语句为多个变量赋值。(2)、在代码块的起先处声明变量,不要在首次用到该变量时才声明【举荐】。(3)、变量、参数和返回值定义尽量基于接口而不是具体实现类,如Mapmap=newHashMap()o【举荐】5.2常量(1)、一行只声明一个常量。不能一个语句为多个变量赋值。(2)、若该常量有必要作为全局工程运用,则建议将其定义到该工程Global类中。(3)、常量必需是final类型。3.14 (1)、一个JaVa文件保存一个类,若实在有必要建

17、立内部类,则放在该java文件最终部分。(2)、左大括号位于声明语句同行的末尾,右大括号另起一行。(3)、类中的属性,运用Long、Double等包装类,而非longdouble等基础数据类型。(4)、类中各个成员的声明依次如下:D静态成员变量。2)静态初始化块。3)成员常量、变量。4)初始化块。5)构造器。6)静态成员方法。7)成员方法。8) 重载自Object的方法如toString(),hashCode(),equals()和main()。9)属性的set、get方法。10)内部类。同等的类型,按public,protected,private的依次排列。3.15 法(1)、当某方法面对

18、不行知的调用者时,方法须要对输入参数进行校验,如不符合,则抛出IllegalArgumentExceptiono代码书写基础规范-9-(2)、对于明确知道该方法会有可能发生异样时,须要在方法声明处写throwso(3)、遇到常常用到并且与模块逻辑无关的方法,请提交技术专家委员会,将该公共方法添加到公司框架中,请不要在自己的程序中编写公共方法中已有的方法。【举荐】5.5语句(1)、在对list、map等数据结构对象访问前,要做非空推断。(2)、if、for、while语句只有单句时,也不行以省略和,这样便于阅读。(3)、对字符串频繁修改时,运用StringBuffer替换Stringo(4)、对

19、于资源类对象运用后要刚好释放。5.6其他规范(1)、隐藏工具类的构造器,确保只有static方法和变量的类不能被构造实例。【举荐】(2)、commit到svn上的代码中,不允许出现SyStem.out.println()等临时用代码,若有必要,则运用log4j工具进行代码编写。(3)、java代码中,除了注释是中文外,不允许其他地方出现中文,所须要的中文文字应当从资源文件中获得。(4)、java代码中,不能出现硬编码,应当须要定义成常量或者相应的配置文件。(5)、关于文件路径中的文件分隔符(斜杠或者反斜杠),不行以干脆写在代码中。而是取自操作系统默认的文件分隔符。例如:StringfIleSeparator=System.getProperties().getProperty(file,separator);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号