开发编码规范.docx

上传人:b****3 文档编号:975168 上传时间:2022-10-14 格式:DOCX 页数:13 大小:40.83KB
下载 相关 举报
开发编码规范.docx_第1页
第1页 / 共13页
开发编码规范.docx_第2页
第2页 / 共13页
开发编码规范.docx_第3页
第3页 / 共13页
开发编码规范.docx_第4页
第4页 / 共13页
开发编码规范.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

开发编码规范.docx

《开发编码规范.docx》由会员分享,可在线阅读,更多相关《开发编码规范.docx(13页珍藏版)》请在冰豆网上搜索。

开发编码规范.docx

开发编码规范

JAVA编码规范vl.O

1.关于3

2.项目结构3

2.1命名空间3

2.2源文件3

2.3文件目录存放3

3.命名约定4

4.排版5

5.Java文件格式6

6.注释规范6

7.代码编译8

8.性能8

9.测试及维护9

10.异常9

11.编程技巧10

1)使用StringBuffer对象10

2)避免太多的使用synchronized关键字10

3)避免使用java.util.Vector类10

4)面向接口编程10

5)避免使用索引来调用数据库中间层组件返回的结果集11

6)对于自己创建的每一个类,都考虑置入一个main()11

7)应将方法设计成简要的、功能性单元11

8)设计一个类时,请设身处地为客户程序员考虑一下11

9)使类尽可能短小精悍,而且只解决一个特定的问题。

12

10)采用内部类12

11)采用注释12

12)避免使用"魔术数字"12

13)接口和抽象类的使用12

14)日志调试13

12.JSP编码规范13

13.日志框架14

14.事务处理16

1.关于

本文档以JAVA编程语言为基础,提供编码规范的指导,以统一开发人员的书写标准,提高代码的可读性。

代码体系、接口规约、命名规则等,这是项目小组今后共同作战的基础,有了编码规范和程序模块之间和项目成员彼此之间的接口规则、方式方法,大家就

有了共同的工作语言、共同的工作平台,使整个软件开发工作可以协调有序地进行。

2.项目结构

2.1命名空间

每个命名空间对应一个目录。

采用完整的英文描述符,应该都是由小写字母组成。

对于全局,将你的Internet域名反转并接上包名如java.awt,com.ambysoft.www.persistenee。

全局命名空间下的其它则按照功能进行划分,每个功能包下则按照放置的不同文件性质进行设置。

2.2源文件

以类名作为文件名。

一个文件只应该有一个命名空间,避免将多个类或命名空间放在同一个文件里面:

一个文件除去IDE产生的代码后最好不要超过

500行的代码,一个方法的代码长度最好不要超过25行,超出后应考虑拆

分代码或重构以降低耦合;每行代码不要超过80个字符;避免方法中有超过5个参数的情况。

如果超过了,则应将参数封装为类或集合类型进行传递。

2.3文件目录存放

JSP存放目录按子系统存放,同一子系统中的JSP文件不再分设单独的目录。

图片存放目录为”/images”,JS文件存放目录为:

专用的JS文件和jsp文

件在同一目录下,公用的放在”/js”下;所有的样式表都存放在”/css”下;

子系统目录采用完整的英文描述说明,第一个单词的首字母小写,其他单词

首字母大写

3.命名约定

命名方式

使用匈牙利表示法,命名时应始终采用完整的英文描述符,一般应采用小写字母。

命名规则

1)包的命名

包的命名一般都有小写字母组成。

如packagecom.util

2)类的命名

类的名字必须由大写字母开头而其他字母都小写的单词组成,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。

如PublicclassUserService{}

3)类的变量命名

变量的名字必须由一个小写字母开头,后面的单词用大写字母开头。

如userName

4)静态变量的命名

静态变量的名字应该都大写,并且指出完整含义。

如publicstaticfinalStringLOG_CONFIG=”WEB-INF/Log4j.properties”

5)参数的命名

参数的名字必须和变量的命名规范一致。

6)数组的命名数组应该总是用下面的方式来命名。

byte[]buffer;而不是bytebuffer]];

7)方法的参数

使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字。

4•排版

换行

1)较长的语句、表达式要等分成多行书写。

2)长表达式要在低优先级操作符处划分新行,操作符放在新行之首。

3)循环、判断等语句中若有较长的表达式或语句,则要进行适当的划分。

4)若函数中的参数较长,则要进行适当的划分。

5)不允许把多个短语句写在一行中,即一行只写一句语句。

缩进和间隔

缩进应该是每行2个空格。

不要在源文件中保存Tab字符,在使用不同的源代码管理工具时Tab字符将因为用户设置的不同而扩展为不同的宽度。

1)关键词和操作符之间加适当的空格。

2)相对独立的程序块与块之间加空行。

3)函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格。

‘{'和‘}'应各独占一行并位于同一列,同时与引用它们的语句左对齐。

4)划分出的新行要进行适应的缩进,使排版整齐,语句可读。

5)可以使用IDE工具中的格式化功能进行代码的排版。

如Eclipse

中,CTRL+SHIFT+F

代码片段

1)避免使用不易理解的数字,用有意义的表示来替代。

2)不要使用难懂的技巧性很高的语句。

3)远程中关联较为紧密的代码应尽可能相邻。

保持

4)编写完成后,检查代码,将代码中没有使用的各类引用包删除,程序的有效、完整性。

5.Java文件格式

所有的Java文件都必须遵守如下的样式规则。

1)版权信息

2)Package/lmports

3)类的注释

4)类属性

5)存取方法

6)构造函数

7)类方法

8)main方法

6.注释规范

1)注释要简单明了。

Stringusername=null;//用户

2)编写代码边注释,修改代码同时修改相应的注释,以保证注释和代码的一致性。

3)在必要的地方注释,注释量要适中。

注释的内容要清楚、明了、含义准

确,防止注释二义性。

保持注释与其描述的代码相邻,即注释的就近原则。

4)对代码的注释应放在其上方相邻位置,不可放在下面。

对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释应放在此域的右方;统一结构中不同域的注释要对齐。

5)变量、常量的注释应该放在其上方相邻位置或右方。

6)全局变量要有较详细的注释,包括对其功能、功能范围、那些函数或过程存取它以及存取时注意事项等的说明。

7)在每个源文件的头部要有必要的注释信息,包括:

作者;生成日期;模块功能描述;文件历史修改记录等。

/**

*预警监控明细纳税人信息指标

*业务规则说明:

*@authorxx

*/

8)在每个函数或过程的前面要有必要的注释信息。

包括:

功能描述;输入、输出及返回值说明;

/**

*返回预警明细信息字符串

*@paramyjxxID预警信息ID

*@paramyjzbID预警指标ID

*@return

*@throwsServiceException

*/

9)javadoc注释标签语法。

@param对方法中参数的说明

@return对方法返回值的说明

@author表明开发此类的作者

7•代码编译

编写代码时要注意随时保存,并定期备份,防止由于断电、磁盘损坏等原因造成代码丢失。

同一项目组内,最好使用相同的编辑器,并使用相同的设置选项。

合理的设计软件系统目录,方便开发人员使用。

打开编译器的所有告警开发对程序进行编译。

搭建必要的CVS或SVN项目组开发人员可以及时的上传、更新项目程序代码,保证代码的一致性。

代码编译之前,需修改程序的参数,以适应不同的环境,如日志的级别、数据库的连接方式在测试环境和生产环境都是不同的。

8•性能

写代码的时候,一定要考虑性能问题,在完成功能的同时也要保证所写代码的执行效率。

如果没有时间来实现一个高效的算法,那么我们应该在文档中记录下来,以便在以后有空的时候再来实现。

不必要的对象构造,不要在循环中构造和释放对象,使用StringBuffer

对象。

在进行文件的读取操作,除了可以正常的捕捉异常外,必须在文件读取完毕后,关闭整个流,特别是在系统发生异常时也要保证相关流操作能够正常关闭。

在进行数据库的读写操作中,在完成操作后,务必要关闭对数据库的连

接,特别是在系统发生异常时也要保证数据库的连接能够正常关闭。

在代码编写的过程中,尽量减少方法中临时变量以及类中全局静态变量的使用,这些变量都将增加系统的额外开销。

在进行数据库编程中,数据的提取、更新、删除这些都需要优化相应的语句。

特别是对于大量数据使用时,语句的优化相当重要。

9.测试及维护

单元测试要求至少达到语句覆盖。

编写测试用例,将用到的各种情况都考虑进去,保证测试的全面及测试结果的准确性。

单元测试开始要跟踪每一条语句,并观察数据流及流量的变化。

清理、整理或优化后的代码要经过审核及测试。

代码版本升级要经过严格测试。

系统开发中可以将已完成的功能交由用户进行使用,可以从不同的角度收集功能测试信息。

系统交付客户使用之前,一定要经过压力测试,保证程序并发运行时达到要求的性能。

10.异常

在系统运行过程中,不论是系统本身的错误,还是由于用户的非法操作导致的错误,系统能够正确的捕捉,且能及时的响应客户,这是评价程序优劣很重要的方面。

因此需要程序捕捉特定的异常,并给出友好的消息给用户,并记录错误的所有可能细节,包括发生的时间,和相关方法,类名等。

不必每个方法都用try-catch,当特定的异常可能发生时才使用。

比如,当写文件时,处理异常FilelOException,不要写太大的try-catch模块。

如果需要,为每个执行的任务编写单独的try-catch模块。

如果应用程序需要,可以编写自己的异常类。

自定义异常应从System.Exception或System.RuntimeException派生。

11.编程技巧

1)使用StringBuffer对象

在处理String的时候要尽量使用StringBuffer类,StringBuffer类是

构成String类的基础。

String类将StringBuffer类封装了起来,为开发人

员提供了一个安全的接口。

当我们在构造字符串的时候,我们应该用StringBuffer来实现大部分的工作,当工作完成后将StringBuffer对象再转

换为需要的String对象。

比如:

如果有一个字符串必须不断地在其后添加许多

字符来完成构造,那么我们应该使用StringBuffer对象和它的即pend()方

法。

如果我们用String对象代替StringBuffer对象的话,会花费许多不必要

的创建和释放对象的CPU时间。

2)避免太多的使用synchronized关键字

避免不必要的使用关键字synchronized,应该在必要的时候再使用它,这是一个避免死锁的好方法。

必须使用时,也尽量控制范围,最好在块级控制。

3)避免使用java.util.Vector类

因为此类属于单线程,所以使用它操作大量数据时,在性能上会有很大的损失。

4)面向接口编程

在程序的开发中,建议尽可能的采用面向接口进行编程,即系统业务方法都必须继承自相应的接口。

系统间的方法调用也是通过接口而非具体实现类完成,期间如果业务方法发生变化或者系统应用环境发生变化,则采用新的方法实现已定义的接口,替换以前的实现即可,而无需修改已有的代码。

总之就是要对修改封闭,对扩展开

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

当前位置:首页 > PPT模板 > 国外设计风格

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1