最近组内一直在做代码改进,既然是代码级别的改进,我想比较直接有效的办法就是Code Review。
虽然以前开发部也做过代码评审,但基本上是程序员手动打包代码,评审人员对照打包和IDE中的代码提交缺陷,缺陷在平台上,代码在IDE中,我想评审效率和评审效果都会大打折扣。
既然发现了问题,目标很明确,找到一个即可以提高评审效率(即让评审人和被评审人都可以很方便的来参与评审),又可以保证评审效果的工具。
再结合我们的实际情况,我们是使用Eclipse IDE开发的,Eclipse的插件不计其数,不怕找不到,就怕你不找,因此从Eclipse Code Review Plugin 下手。
经过调研和试用,我找到两款比较好用的开源免费插件:ReviewClipse 和 Jupiter 。
简单介绍一下这两个工具的特点和在Qone中的使用场景
ReviewClipse
官方地址:http://www.inso.tuwien.ac.at/projects/reviewclipse/
这款插件是基于SVN版本比较机制进行代码Review的工具,通过配置svn中哪些人可以评审哪些人的指定类型代码,可以监控整个项目范围内指定人员指定类型代码文件的所有变更情况。通过这些变化代码的前后版本对比,可以发现被评审人的所有代码改动。
它比较适合在对代码改动比较敏感的阶段使用,如版本测试后期bug修改阶段或者mantis上小版本bug修改。或者进行较频繁的代码评审时使用,如项目经理想看新人每天提交的代码,让新人快速提升代码质量及改善代码风格。
这个工具应该说是项目经理进行代码修改影响分析的好工具,无需再自己对着SVN log,查谁改了哪些文件,然后再查影响分析了。贴个图先:
?
?
同时ReviewClipse还支持多人协同的代码评审,被评审人可以看到评审人给出的评审意见。
ReviewClipse的不足在我看来就是它只支持文件级别的代码评审,不能提供代码行级别的评审,并且不支持常规的代码评审流程。
Jupiter
jar及帮助文档下载地址:http://code.google.com/p/jupiter-eclipse-plugin/downloads/list
中文简要参考文档:http://fyting.iteye.com/blog/87489
Jupiter解决了ReviewClipse的不足,它提供了代码行级别的评审批注功能,方便评审参与人了解具体是哪些行代码存在问题。同时,它也比较符合常规的评审流程,被评审人提供待审代码->评审人线下提出个人意见->组织讨论会讨论每个人提出的意见并确定问题及解决方案->被评审人rework修改代码->评审人查看修改情况。
Jupiter支持在一个项目中的多次评审,多人协同参与评审,支持多种配置库如SVN、CVS等,支持简单的评审流程,支持问题跟踪。
我想Jupiter提供的这些简单的功能,已经完全可以胜任常规的代码评审需要,作为常规评审比较合适。并且评审人和被评审人都可以通过Eclipse操作,对于我们程序员来说,很方便,大家天天都要对着Eclipse,Jupiter可以让代码评审成为编码的一部分工作而又不增加评审工作量。
Jupiter虽然对常规代码评审(Code Review)比较适合,但是对于像敏捷中的每日代码评审就显得有些力不从心,虽然也可以做到,但是每次评审需要指定评审文件,并且不能通过指定目录或者通配符方式还是有些不便的,这一点它不如ReviewClipse那么直接精准。
先上一个Jupiter的图:
?
这两款工具完全可以结合起来使用,相信会减少不少代码评审的工作量。
两个工具的详细介绍,内容比较多,有必要再单独开2个帖子讨论,当然这也得看大家的回帖和参与情况了,否则没有发帖动力啊:)
暂时先介绍这么多…
详细解决方案
Eclipse Code Review(代码审查)工具引见
热度:253 发布时间:2016-04-23 02:28:44.0
相关解决方案
- eclipse struts2找不到action!调了一个晚下了
- Eclipse + Tomcat Debug時很慢,该怎么解决
- eclipse+tomcat6.0+oracle 10g配置数据库连接池的异常
- eclipse ee版本 怎么新建和发布 web project
- eclipse 运用URL连接出错,求解
- eclipse jee tomcat警告有关问题
- eclipse 提醒 configure build path
- !hadoop 0.21.0 eclipse 3.7 win7,点击run on hadoop报错
- JDBC MYSQL 驱动加载失败 JSP DAO ECLIPSE,该怎么解决
- Eclipse 报错org.apache.catalina.LifecycleException: Failed to start component。该怎么解决
- eclipse 老崩溃 错误异常如下
- weservice调用Server returned HTTP response code: 500 for URL解决方法
- Eclipse JSP调用Servlet的有关问题
- eclipse 怎么发布 Dynamic web project到Tomcat
- eclipse 经典版,最新稳定版是多少?解决方法
- 【文件分享】Eclipse Plug-in资料分享
- eclipse 在线安装 birt,该怎么解决
- 现下公司里开发用的 Eclipse + MyEclipse + Tomcat + JDK 都是什么版本的
- Eclipse plugin/RCP开发资料大整理
- 现时公司里开发用的 Eclipse + MyEclipse + Tomcat + JDK 都是什么版本的
- j2me eclipse antenna打包混合出错了,该怎么处理
- Eclipse + wtk下,如何加com.nokia.mid.ui
- Eclipse 混淆包错误有关问题
- Eclipse 调试 J2ME 出现有关问题了。
- eclipse 3.2中J2ME 开发配置有关问题
- eclipse wtk 2.2整和有关问题
- eclipse 集成 javaAPI 的有关问题
- eclipse class not found 愁死了解决方法
- 一个关于QR code(二维码) 的有关问题
- eclipse 没法打包资源文件