欢迎来到天天文库
浏览记录
ID:29868622
大小:17.63 KB
页数:6页
时间:2018-12-24
《代码审查报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划代码审查报告 代码审核问题报告 评审对象:张宏伟 评审日期:XX-4-13 符审查代码: 代码审查报告 检查人:________________检查日期:_____年_____月_____日 审查内容:__请填写执行代码审查的系统名称______________________________________审查结果:通过□不通过□ 说明:__请填写执行代码审查的系统功能_______
2、_______________________________ 一、概述 代码审查是消灭Bug最重要的方法之一,这些审查在大多数时候都特别奏效。由于代码审查本身所针对的对象,就是俯瞰整个代码在测试过程中的问题和Bug。并且,代码审查对消除一些特别细节的错误大有裨益,尤其是那些能够容易在阅读代码的时候发现的错误,这些错误往往不容易通过机器上的测试识别出来。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车
3、场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 主要工作 1、发现代码中的bug; 2、从代码的易维护性、可扩展性角度考察代码的质量,提出修改建议。 3、是否符合java开发规范和代码审核检查表 基本流程 1、代码编写者和代码审核者坐在一起,由代码编写者按照UC依次讲解自己负责的代码和相关逻辑,从表现层->持久层; 2、代码审核者在此过程中可以随时提出自己的疑问,同时积极发现隐藏的bug;对这些bug记录在案。 3、代码讲解完毕后,代码审核者给自己安排几个小时再对代码
4、审核一遍。代码需要一行一行静下心看。同时代码又要全面的看,以确保代码整体上设计优良。 4、代码审核者根据审核的结果编写“代码审核报告”,“审核报告”中记录发现的问题及修改建议,然后把“审核报告”发送给相关人员。 5、代码编写者根据“代码审核报告”给出的修改意见,修改好代码,有不清楚的地方可积极向代码审核者提出。 6、代码编写者bugfix完毕之后给出反馈。 7、代码审核者把CodeReview中发现的有价值的问题更新到"代码审核检查目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力
5、,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划表"的文档中,对于特别值得提醒的问题可群发email给所开发人员。 责任 代码编写者,代码审核者共同对代码的质量承担责任。这样才能保证CodeReview不是走过场,其中代码编写者承担主要责任,代码审核者承担次要责任。 二、java代码审查检查表 三、Java代码审查的常见错误 常见错误1#:多次拷贝字符串 测试所不能发现的一个错误是生成不可变
6、(immutable)对象的多份拷贝。不可变对象是不可改变的,因此不需要拷贝它。最常用的不可变对象是String。 如果你必须改变一个String对象的内容,你应该使用StringBuffer。下面的代码会正常工作: Strings=newString("Texthere"); 但是,这段代码性能差,而且没有必要这么复杂。你还可以用以下的方式来重写上面的代码: Stringtemp="Texthere"; Strings=newString(temp); 但是这段代码包含额外的String,并非完全必要
7、。更好的代码为: Strings="Texthere";目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 常见错误2#:没有克隆(clone)返回的对象 封装(encapsulation)是面向对象编程的重要概念。不幸的是,Java为不小心打破封装提供了方便——Java允许返回私有数据的引用(reference)。下面的代
8、码揭示了这一点: import; /***Examplexandyvaluesshouldnever*benegative.*/publicclassExample{ privateDimensiond=newDimension(0,0); publicExample(){} /***Setheightandwidth.Bothheightandw
此文档下载收益归作者所有