代码审查的最终目标是什么?
确保更改有效?验证代码是否遵循代码风格指南?检查新更改是否会破坏其他东西?
所有这些问题都是代码审查的必要部分,但它们都不是其最终目标。
代码审查的主要目的是确保解决方案以最佳方式解决问题——从代码和产品的角度来看。
所有代码审查实践都是为了实现这一最终目标而设计的。
那么,该如何进行代码审查呢?
没有完美的代码
在开始审查代码之前,你需要知道没有完美的代码——只有平衡的代码。
作为审阅者,你需要知道平衡的重要性,并停止追求完美。
要知道不只是为了代码而编写代码,而是使用代码解决业务问题。
如果代码解决了一个问题并提高了系统的可维护性、可读性和可理解性,即使它并不完美,也不要拖延数周。可以对代码发表改进评论,并给它一个绿灯。
你的意见不是权威
每个人对每件事都有自己的个人看法:你应该如何编写代码,应该花多少时间写代码,为什么你需要使用某个文本编辑器而不是另一个等等。
我们都有不同的经历和不同的背景,但我们需要在代码审查期间抛开它们。
当你决定审查的解决方案是否写得好时,你必须依赖技术事实和标准,而不是个人偏好。
例如,在编码时,也许你总是在行尾使用分号,但你正在审查的代码却没有。你要做的第一件事是发表评论,例如“在此处添加分号”。但是你更应该做的是创建一个风格指南并使其成为团队中的标准。
且基础代码库必须保持一致,不能按照个人喜好编写。
解决冲突
我见过很多例子,审阅者在代码审阅时发表了错误的评论,在意识到错了之后,他们仍然决定不改变原有的立场,只是为了不显得他们很愚蠢。
代码审查不是你需要支配对手的擂台。你们是一个团队,朝着共同的目标努力。每个人都是你的队友。
在冲突中你应该做的第一件事就是达成共识。最好立刻沟通,快速达成一致。
如果你们都找不到关于如何编写代码的通用解决方案,那么就向团队或技术主管寻求帮助。
不要在一个冲突上持续好几天,努力尝试尽快解决。
代码质量
在更高的层次看问题,你需要在代码审查时关注两件事:
- 代码能解决问题。
- 代码设计得很好。
因此,你需要创建一份清单,列出你在审查代码时应注意的事项,并在每次代码审查中使用。
以下是一些建议:
- 代码需要按照开发人员的意图编写。
- 代码不能太复杂,以至于难以理解,好理解的代码易于维护。
- 命名准确友好,能清晰的表达业务。
- 在必要的地方需要添加注释。
- 需要遵循代码风格指南。如果你的公司没有风格指南,那么需要创建一个。
- 判断本次更改是否需要文档?如果代码更改了基本或主要功能的主要部分,那么代码提交者需要创建或更新有关它的文档。
测试
每个更改都必须经过测试。要求代码提交者根据添加单元、集成或端到端测试,并确保有效。
评论
首先,从你对正在审查其代码的人的感受中抽象出来。始终对代码而不是对人发表评论。
如果你看到代码提交者写了“糟糕”的代码并且引发了愤怒情绪,请先冷静下来,然后回来以冷静的心态发表评论。
此外,永远不要写“做这个而不是这个”之类的评论。总是解释为什么代码提交者应该进行更改并添加来源(链接到博客文章、文档、指南),以便人们可以阅读更多相关信息。但是当你解释原因时,不要写出完整的问题解决方案,修复另一个开发人员的代码不是你的工作。你需要在指出问题和提供直接解决方案之间找到平衡。
做人
最后一个:做人。
如果你在更改中发现了一些不错的地方,请告诉作者。代码审查不应该只是错误。也给一些积极的反馈。做一名导师。
对你来说,这可能只是一个小小的正面评论,但对其他人来说,这可能是一个很大的鼓励。
声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者迷路的架构师所有,原文出处。若您的权利被侵害,请联系删除。
本文标题:(java代码审查)(代码审查规范和方法)
本文链接:https://www.51qsb.cn/article/dvjlcl.html