代码走查和代码审查
我有机会参与各种小组对等代码审查方案,有时我发现自己在想-这值得吗? (在这之后,我常常会心神不宁,想知道在任何建筑物中的自助餐厅是否还有饼干,而在评论中进行长达20分钟的脱口而出的谈话可悲地确保了饼干不会消失。)
我个人认为是的,代码审查通常不仅对维持高质量的代码库很重要,而且这样做也有助于限制生产问题。 审查不仅可以发现错误,而且还可以帮助找到一种更好的方法(更多的重用性,更高的效率,更多的可读性)来解决问题,从而提高代码的整体质量。 除了提高质量外,评审的一个同样伟大的目标是帮助将有关代码库的知识传播给整个团队。
注意:关于在纯敏捷环境中是否不需要它们,有很多争论,我在这里并没有真正解决。 我假设一个团队可以使用敏捷的某些方面,但是不使用例如结对编程,这极大地限制了需求。
所有这些都很好,但是代码审查可能会花费大量的开发时间,因此,在适当的情况下它们可能很棒,但让他们继续执行任务并预先限制范围也很重要。
以下是一些可帮助您使代码审查有效的项目:
准备工作应该进行
人们应该练习已经遵循了团队的书面编码标准,以免因担心特定于项目的命名约定等问题而浪费太多时间。 重要的是要满足这些要求,并偶尔在评论中找到它们是有道理的,但是过多强调可以使每个人都无法完成任务(认真地来说,没有无限的cookie人)。
专注于诸如格式化之类的事情也表明事情还没有完成。 如果有一种方法可以在您的IDE中自动进行标准化,那么每个人都应该这样做。 该评论中无需提及。
另外,使用诸如FindBugs之类的静态代码分析工具和诸如Cobertura之类的代码覆盖率工具来确保测试覆盖率将有助于发现可能遗漏的问题,并使评论简短集中。 这使审阅者可以专注于更细微的逻辑和设计问题等。
保持简短和频繁
审查需要大量的精力,较长的时间会导致疲劳和遗漏问题。 另外,它确实占用了开发时间,因此保持快速完成任务当然很有帮助。
最好让所有人耳目一新。 进行审核的方法有很多,最好的方法是根据团队和项目的不同而不同,但是无论您是肩扛,配对,通过工具发送代码以进行审核还是在小组中进行更正式的审核,这都是最好保持他们频繁和小。 更加频繁地执行它们意味着可以在重大问题解决之前将其解决。
大家玩
即使是最高级的建筑师或超级明星开发人员也可能会犯错误。 赶在这里好多了。 再者,对于更多的初级人员和应用程序较新的人来说,这也是一个学习的机会。
建设性投入
一般而言,诸如“更多评论”之类的评论通常无济于事。 没有注释的界面在这里可能是一个例外,并且文档也不错,但是如果您发现没有意义的内容,那么现在是时候弄清楚为什么会造成混淆并确定设计是否可以改进或是否存在错误。逻辑存在。
专注于真正理解代码的作用,并确保如果其他人需要维护代码,他们可以理解它。
工具类
使用专为代码审查而设计的工具来加快和简化过程。 例如, Crucible是流行的Atlassian代码审查工具,它提供了许多出色的审查功能。
检查清单
可能不需要太在意这些内容或过于结构化,但是如果某些问题不断出现,那么拥有一份清单可以是一个方便的工具。
积极的环境
无论涉及多少人,都需要积极的团队努力来共享信息并创建最佳的应用程序。
审核愉快。 现在,去获取该cookie并返回到开发。
翻译自: https://www.javacodegeeks.com/2013/09/tips-for-code-review-success.html
代码走查和代码审查