code review 有助于尽早发现代码中的问题,协调并逐渐统一各个编程人员的代码规范和习惯,以常用的Jupiter为例.
Jupiter里,代码评审(code review)分为4个流程:
- Configuration(配置):review发起者设置“Review ID”,指定要评审的代码,参与代码评审的人员,要讨论的问题等
- Individual review(个人评审):每个人独自审查代码,把可能出现问题的代码加入checklist
- Team review(团队评审):大家在一起讨论之前检查出的问题代码,并决定如何处理
- Rework:开发人员根据之前评审的结果,对代码进行修复
流程
Configuration
由评审发起者(代码作者、team leader或者PM)进行配置。打开项目属性->Review选项页。点击“New...”,设置相应的ReviewId和description:
接着添加本次要评审的代码和文件
添加参与代码评审的人员
接下来设置各种缺陷类型、严重性之类的。然后就是指定存放评审数据的目录。这个目录是相对于项目根目录的。如下图:
设置完成后,Jupiter将在项目根目录下生成“.jupiter”文件,把此文件存入CVS。现在评审发起者可以通知大家进行代码评审了。可以通过发邮件的方式进行通知,通知的内容最好有以下部分:
即:
- 项目名称、Review ID、参与评审人员名单。
- 被评审代码的描述信息,如功能,需求等等
- 新增加和删除的文件
- 受影响但没有在Configuration中指定的组件
通知完毕后,各成员即可正式进行代码评审。
Individual review
从CVS取出最新的代码和.jupiter文件,在eclipse里->窗口(Window)->打开透视图(Open Perspective)->Review。然后选择Individual Phase:
选择项目名称,Review ID和Reviewer ID(评审者ID),然后就可以开始查看代码了。
在代码评审过程中,发现有问题的代码,即可在上面点击右键菜单->Add Review Issue...把问题添加到Jupiter中,指定问题类型、严重性和描述信息,点击保存。
完成个人的代码评审后,把Jupiter评审数据目录下的文件传入CVS,就可以一起进行讨论了。
Team review
大家在一起,使用一台电脑或者投影仪,选择Team Phase
现在Individual Phase里检查出的所有的问题都会显示在ReviewTable里,点击Go To就能链接到问题所在代码,然后大家讨论这段代码是否有问题,如何解决等等,把结果写到ReviewEditor里,保存。
所有的问题讨论出结果后,把Jupiter评审数据文件传入CVS,散会,各自回到自己位置,进行下一个步骤
Rework
从CVS取出最新的Jupiter评审数据文件,选择Rework Phase
选择自己的ID后,上一步骤中分配给自己的问题就会显示到ReviewTable里,一个一个地把问题修复吧,修复后把状态置为Resolved。完毕后把Jupiter数据传CVS。
各自的rework完成后,各位评审者取出最新的Jupiter数据,关闭ReviewTable的过滤器,就能查看到本次评审中发现的各种问题,对各种问题进行验证,感到满意后可以把状态置为Closed,或者验证未通过,就置为Re-Opened。
总结
如此,便完成了一次代码评审……
工具仅仅是一种辅助措施,更主要的是如何发挥积极主动性,不断提高编码水平和定制规范.
参考资料
- Jupiter User's Guide http://csdl.ics.hawaii.edu/Tools/Jupiter/Core/doc/UsersGuide.html
- Effective Code Reviews Without the Pain http://www.developer.com/java/other/article.php/3579756
- Peer Code Reviews Made Easy with Eclipse Plug-Inhttp://www.devx.com/enterprise/Article/31658/0/page/1
相关推荐
借助一些工具可以更容易,更有效率地来进行Code Review,本文介绍的Jupiter即是其中之一。 Jupiter概述 Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个...
Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个很方便的功能是其建立了review问题跟具体源代码的对应关系(通过点击review问题列表中的问题可以跳转到对应的...
使用Jupiter或Reviewclipse这样的Code Review工具,可以显著提升开发团队的效率和代码质量。它们不仅减少了因错误引起的bug,还能在团队中建立良好的代码审查文化,鼓励共享知识,提升整体编程水平。通过定期的Code ...
代码评审工具,通过CodeReview可以有效的降低开发风险、提高代码质量
**Jupiter代码审查工具详解** Jupiter是一款专用于代码审查的工具,旨在帮助软件开发团队提高代码质量和确保代码规范性。代码审查是软件开发过程中的重要环节,它可以帮助发现潜在的错误、提升代码可读性,并促进...
文章中提到的CodeReview工具主要是指开源的代码审查工具,如ReviewBoard、Jupiter、JCR、Codestriker、Rietveld等,并介绍了其中几种工具在Windows系统上的安装步骤。 开源代码审查工具通常具有以下功能特点: 1. ...
Jupiter也考虑到了对旧版项目的兼容性,确保即使是使用旧技术栈构建的应用也能顺利进行代码审查。这体现了Jupiter对所有类型项目的全面支持。 综上所述,Jupiter不仅是一个强大的代码审查工具,它还提供了一套完整...
FindBugs Checkstyle Jupiter 使用说明 FindBugs 是一个静态代码分析工具,用于检测 Java 代码中的错误和不良编程实践。它可以帮助开发者在编码过程中发现问题,从而提高代码质量。 FindBugs 使用说明 FindBugs ...
Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个很方便的功能是其建立了review问题跟具体源代码的对应关系(通过点击review问题列表中的问题可以跳转到对应的...
**Jupiter 系统优化清理工具详解** Jupiter是一款针对Windows操作系统设计的轻量级工具,专注于系统优化和清理工作。...通过定期使用Jupiter,用户可以显著提升电脑的工作效率,延长电脑的使用寿命。
赠送jar包:junit-jupiter-api-5.7.2.jar; 赠送原API文档:junit-jupiter-api-5.7.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.7.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.7.2.pom; ...
JUnit5相关的 JUnit Jupiter.jar依赖包,主要包含: junit-jupiter-5.5.1.jar,junit-jupiter-api-5.5.1.jar,junit-jupiter-engine-5.5.1.jar,junit-jupiter-params-5.5.1.jar,junit-jupiter-api-5.4.2.jar,...
4. **智能重构**:Jupiter提供了一套强大的代码重构工具,如重命名变量、提取方法、移动函数等,这些操作可在不破坏现有逻辑的前提下安全地改进代码结构。 5. **代码质量评分**:插件可以对整个项目或单个文件进行...
赠送jar包:junit-jupiter-api-5.8.2.jar; 赠送原API文档:junit-jupiter-api-5.8.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.8.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.8.2.pom; ...
赠送jar包:junit-jupiter-api-5.4.2.jar; 赠送原API文档:junit-jupiter-api-5.4.2-javadoc.jar; 赠送源代码:junit-jupiter-api-5.4.2-sources.jar; 赠送Maven依赖信息文件:junit-jupiter-api-5.4.2.pom; ...
Eclipse 插件 Jupiter 是一个强大的工具,专为软件测试和开发人员设计,它扩展了 Eclipse IDE 的功能,尤其在 JUnit 5 测试框架的支持上。Jupiter 是 JUnit 5 的核心部分,提供了现代化的单元测试能力,使得编写、...
- **数据库连接测试**:使用JUPITER或其他工具测试与Oracle和SQL Server的连接,确保数据通信无误。 **4. 实例演练与学习路径** 为了帮助初学者逐步掌握JUPITER DesignStation,本书将通过实际业务场景引导,如: ...
总之,Eclipse插件Jupiter是现代Java开发不可或缺的工具,它极大地增强了IDE对新版本Java语言的支持,让开发者能够充分利用Java的最新特性,同时保持代码的质量和效率。如果你遇到无法在线安装的问题,手动下载并...
使用这个工具,用户不仅可以管理手机,还能利用手机的网络资源,尤其是在没有Wi-Fi的环境下。 在压缩包中,"jupiter驱动手机联电脑上网"可能是包含所有必要组件的单一文件或文件夹,用户只需解压并按照指示运行,...