1 / 12
文档名称:

同行评审-代码审查参考文档.doc

格式:doc   大小:77KB   页数:12页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

同行评审-代码审查参考文档.doc

上传人:小健 2021/8/17 文件大小:77 KB

下载得到文件列表

同行评审-代码审查参考文档.doc

文档介绍

文档介绍:代码审查参考文档
代码审查(codereview)是保证软件质量的一个重要环节,通过审查代码能 够发现代码中可能存在的问题并给予纠正,这些问题可能包括设计上的、实现上 的或者编程风格等多方面。本文档通过列举代码编写过程中的一些常见的细节问 题,为代码审查环节提供参考。
Java代码
一、对象和变量
存在未被使用的变量
Eclipse会自动用下划线标出
对象的重复创建
这是系统中普遍存在的问题,比如:
public class PrtGrpEndorsementBL (
private Globallnput mGloballnput = new Globallnput();
private boolean getlnputData(VData clnputData) (
mGloballnput = (Globallnput) ( "Globallnput", 0);
return true;
}
}
这里mGloballnput对象属于重复创建,因为在getlnputData方法里会对它进行赋值,
mGloballnput使用的应该是从jsp页面传入的对象,所以改为private Globallnput mGloballnput = null;
又如:
String msg ="";
if (. .) {
msg = "A";
}
else (
msg
nBn;
这里msg同样属于重复创建,改为String msg = null;
变量的作用域
Java的局部变量可以定义在函数的任何位置,有部分由c转学java的程序员习惯将变 量都定义在函数的顶部,因为在c里只能那样定义。但实际上变量的作用域越短程序的 内聚性就越高,耦合性也更低,程序更容易理解,因此在java里应该在使用前才定义 变量。
局部变量的危害
定义过多的不必要的局部变量是造成系统难以维护的原因之一,因为每增加一个局部变 量我们就要先化时间去理解这个局部变量的意思,因此我们要减少局部变量的使用。用 函数的返回值来替代局部变量是一种有效的办法,这就需要我们用重构的方式从大的函 数中提出小的函数,用小函数的返回值来替代原有的局部变量。把大函数分解本身也可 以降低程序的耦合度。
二、常量
硬编码,将代码写死
比较严重的情况是将险种代码写死在程序中,比如:
if ("21301".equals(())) (
这里将“21301”写死会为系统的维护和升级带来很大困难,最好是以险种定义的形式 去动态获取险种代码。如果实在描述有困难,可以考虑建立一个Constants常量类,将其 以常量的形式定义,这样以后维护只需改动一处即可。
业务系统中存在不少的状态标志,比如AppFlag的状态”0”为未签单,”1”为已签单,”2” 为保全增人。虽然这些状态的意义日后已没有改动的可能,但直接将”0”、”1”、”2”写在 程序里会导致程序可读性差,因此我们同样可以将其定义在常量类中,并加上注释,这样 我们不必每次都去翻看文档或pdm,看常量类里的注释就行了。
禁用常量接口
Java的常量有一种不好的用法,就是将常量定义在Inferface中,这种方使定义的常量 在使用时可以省去类名前缀,但会为以后的维护带来麻烦。因此不要试图用继承的方式 去使用常量。
三、数组
数组的定义
数组的定义采用String[] str = null;的形式,而不是String str[] = null;
数组越界
数组越界是比较常见的错误,比如:
private void dealCont() {
LCContDB tLCContDB = new LCContDB();
(mGrpContNo);
tLCContSet = ();
for (int i = 0; i < (); i++) {
LCContSchema tLCContSchema = (i);
LCPolDB tLCPolDB = new LCPolDB ();
(());
LCPolSet tLCPolSet = ();
for (int j = 0; j < (); j++) {
LCPolSchema tLCPolSchema = tLCPol

最近更新

中专新学期工作计划范文例文 4页

2025年国家电网招聘之电网计算机考试题库及参.. 160页

2025年国家电网招聘之电网计算机考试题库【预.. 160页

2025年国家电网招聘之电网计算机考试题库及参.. 159页

东区小学语文能力考核(一年级考核题) 2页

学生违规违纪惩戒承诺书(范文模版) 3页

2025年学校卫生安全工作责任书 3页

2025年国家电网招聘之经济学类考试题库及完整.. 79页

长株潭城市群绿心地区的生态补偿研究——以生.. 3页

学生保证书(通用15) 6页

2025年国家电网招聘之经济学类考试题库【综合.. 80页

专题06-质量守恒的应用及相关计算(练习)(原卷.. 6页

2025年国家电网招聘之经济学类考试题库及参考.. 80页

锥度量空间中集值映射的不动点 5页

2025年国家电网招聘之经济学类考试题库学生专.. 79页

2025年国家电网招聘之通信类考试题库及参考答.. 165页

2025年国家电网招聘之通信类考试题库【培优b卷.. 165页

关于小学英语教研工作计划 3页

学术论文署名和单位地址格式规范标准 7页

2025年国家电网招聘之通信类考试题库附参考答.. 165页

2025年国家电网招聘之通信类考试题库含答案【.. 164页

2025年国家电网招聘之通信类考试题库含完整答.. 165页

学术报告 会议报告 座谈交流 工作总结 工作汇.. 5页

2025年童趣-初中初一作文600字 1页

2025年土地登记代理人之土地登记相关法律知识.. 180页

2025年土地登记代理人之土地登记相关法律知识.. 178页

2025年心理健康教案学习的乐趣 1页

针灸疗法治疗血瘀证的文献研究 3页

2023入团知识测试入团测试题及答案 36页

焦虑自评量表SAS完整 6页