前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >如何编写代码审查文档

如何编写代码审查文档

作者头像
明明如月学长
发布于 2023-06-09 03:07:11
发布于 2023-06-09 03:07:11
1.1K0
举报

一、前言

代码审查(Code Review)是开发流程中非常重要的一个环节,可以帮助发现并改正代码中的错误,提高代码质量,也是共享知识、熟悉代码的好机会。

最近功能开发完毕需要做代码审查,发现国内很多公司不强制要求编写代码审查文档,很多人并不会认真思考代码审查文档需要包括哪些内容,大概该怎么写。 我的看法是,虽然一般公司不要求写代码审查文档,但是最好自己能够准备一个,方便线下代码审查时不遗漏重点,跟踪代码审查的修改情况等。 本文简单给出一个简单的参考。

二、代码审查文档

2.1 文档包括的内容

在准备代码评审之前,你需要做如下准备:

  1. 需求文档:如果项目基于特定的需求文档,也应将需求文档一并提交,帮助审查者理解你的实现目标。
  2. 设计文档:如果有对应的设计文档,将其一并提交。设计文档可以帮助审查者理解你的设计思路,掌握代码的整体架构。
  3. 代码审查清单:列出你想要同事关注的重点,包括新的设计模式,核心算法,重要的类或者函数等。
  4. 单元测试集成测试代码:对于每一个功能,都应该编写相应的单元测试或集成测试代码,这能够帮助审查者验证功能是否正常。
  5. 问题和改进意见收集表:准备一张表格,可以在代码审查时记录代码审查人员提出的问题和给的改进意见,并跟踪自己的修改情况等。

通常我会将项目的需求文档、设计文档、代码审查清单(仓库、分支、核心代码、核心单测、单测覆盖率等)、改进意见收集表都记录在文档中。

2.2、代码审查清单

给出代码的仓库地址和代码的分支,项目代码相当于 Master 的diff 链接等。

仓库

分支

Diff 链接

然后给出核心代码清单: (1)可以从功能方面划分,如每个功能对应的关键代码位置等。

序号

功能描述

核心代码引用

审查重点

1

资讯的缓存功能

FeedsCacheManager

重点介绍 缓存 Key 和过期时间

2

资讯推荐功能

FeedsFacade.recommend

推荐的打分逻辑

3

(2)也可以从层次方面划分,如重点的 Facade 、 Service 、Dao、 工具类代码位置等。

序号

功能描述

核心代码引用

审查重点

关键入口

功能1

FeedsFacade.xxx

功能2

FeedsFacade.yyy

核心逻辑

xxxx

XXXService.yyy

核心工具类

核心单测

2.3、问题和改进意见记录

以下是一个简单的【问题和改进意见记录】模版。这个模版可以根据实际需要进行调整:

序号

文件名/类名/方法名

问题描述

改进建议

问题严重级别

提出人

进度

1

ExampleClass.java

变量命名不规范,使用了单字符命名

使用有意义的变量名,如: employeeName 代替 n

John Doe

[ ] 完成

2

ExampleMethod

方法过长,超过100行

尝试拆分这个方法,每个方法应尽可能完成一个具体的功能

Jane Doe

[ ] 完成

3

ExampleClass

缺少单元测试

添加相应的单元测试以保证功能正确性

John Doe

[ ] 完成

在这个表格中:

  • "文件名/类名/方法名"是指出问题的具体位置。
  • "问题描述"是对问题的简要描述。
  • "改进建议"是对如何改进代码的具体建议。
  • "问题严重级别"表示问题的重要程度,可以依据问题的性质和影响程度进行分级,如:低、中、高。
  • "提出人"是指出这个问题的人。

这只是一个基本的模版,你可以根据自己的需要进行调整和扩展。

三、总结

其实准备代码审查文档并没有浪费很多时间,线下代码审查时自己能够非常清楚自己代码的重点,就可以避免遗漏要点,审查效果会更好。

代码审查文档也有助于功能开发时间过长之后,快速找到功能的入口、核心代码的位置等。 如果周围的人都不编写代码审查文档你写对应的文档,如果被主管“发现”或许会有更多“机会”。 总之,希望大家尤其是大的项目开发完毕进行线下代码评审时积极编写代码审查文档,方便自己也方便他人。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
[译] 代码审查之最佳实践
原文:https://medium.com/palantir/code-review-best-practices-19e02780015f 作者:Robert F. (https://github.com/uschi2000)
江米小枣
2020/06/15
1.1K0
最佳PHP代码审查关键原则与实践技巧
代码审查有时会让人觉得有点乏味。但是它们对于创建工作良好、易于使用并且不会引起安全问题的PHP应用程序来说是绝对必要的。好消息呢?有一种方法可以使代码审查有效。让我们分解一下在审查PHP代码时要寻找的关键内容。
Tinywan
2024/05/11
1540
最佳PHP代码审查关键原则与实践技巧
【译】送给你的代码审查问题手册
代码审查列表,是代码审查的明确规则和指导手册,它可以使代码审查为你的团队带来更多好处,并且能够显著提升代码审查的速度。
Jackeyzhe
2020/03/11
1.2K0
【译】送给你的代码审查问题手册
Google 鼓励的 13 条代码审查标准,建议收藏!
在本文中,我们将简要介绍13条代码审查标准,希望能够通过这些标准极大地帮助改善软件的质量,同时让开发人员保持心情愉悦。
Java技术栈
2020/12/08
8320
Google 鼓励的 13 条代码审查标准,建议收藏!
代码审查中的安全问题防控指南!
在现代软件开发中,安全问题是代码审查中最重要的关注点之一。一旦代码中存在漏洞,可能会导致:
bug菌
2025/01/22
1090
代码审查中的安全问题防控指南!
说透代码评审
  代码如熵,不加外力很容易就会随着代码的不断堆积而发生腐烂和溃败。我们不是不知道代码问题,而是对既成事实难有改变。但是如果站在迭代的角度思考下一次升级,如何确保新的代码质量就显得很有必要,特别是你的代码需要重写的时候,我想你一定会遇到和我一样的问题,我们究竟应该如何保证我们的代码的质量?于是就有了这篇工具型的文章。
架构之家
2022/07/12
7830
说透代码评审
不做代码审查又怎样?| TW洞见
今日洞见 文章作者/配图来自ThoughtWorks:王健。 本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本网协议授权的媒体、网站,在使用时必须注明"内容来源:ThoughtWorks洞见",并指定原文链接,违者本网将依法追究责任。 从一次回顾会议开始 “要不……我们不做……代码审查了……试试?”还记得当有人抛出这个建议时周围同学的表情,那种表情用两个字加两个标点符号就可以形容:“
ThoughtWorks
2018/04/20
6890
不做代码审查又怎样?| TW洞见
技术债务的识别与控制:让代码审查成为你的“减债利器!
今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。
喵手
2025/01/23
1050
Java项目Git提交规范
在Java项目中,遵循良好的Git提交规范有助于提高代码的可维护性、可读性和团队协作效率。以下是一些常见的Git提交规范建议:
訾博ZiBo
2025/01/06
1070
【方向盘】IDEA的代码审查能力,来保证代码质量
你好,这里是Java方向盘,我是方向盘(YourBatman),坐稳扶好,开始发车。
YourBatman
2022/09/16
2K0
【方向盘】IDEA的代码审查能力,来保证代码质量
用 GitLab 的 Merge Request 做代码评审
在目前已使用的质量内建的工程实践中不可否认的一个实践为代码审查 它被用作提高产品交付质量和提高开发过程效率的有效措施。
DevOps时代
2019/05/14
3.6K0
代码审查如何保证软件质量
在软件行业,您可能经常会听到术语“代码审查”。但是,代码审查的概念经常被误解。人们通常认为它在软件开发生命周期中被忽视执行测试应足以满足验证过程。因此,他们倾向于对代码审查过程视而不见。但是,忽略代码审查过程可能会反弹并产生重大后果。我们也有一个误解,认为代码审查过程是开发团队的责任。它不是!代码审查是一个过程,不仅应包括开发人员,还应包括质量保证人员和产品经理。本文是我的尝试,旨在帮助您意识到代码审查的重要性以及您应该如何参加质量检查。
FunTester
2019/11/10
1K0
Google鼓励的13条代码审查标准 [建议收藏]
在本文中,我们将简要介绍13种代码审查标准,这些标准可以极大地帮助改善软件的运行状况并保持开发人员满意。
DevOps云学堂
2020/09/14
7080
Google鼓励的13条代码审查标准 [建议收藏]
如何进行高效的代码审查
代码审查是软件开发过程中至关重要的一环。它是指由开发团队中的其他成员对代码进行检查,以确保代码的质量和一致性。
小万哥
2023/07/28
3190
如何进行高效的代码审查
前端代码审查清单
前端代码审查清单是一个保证前端代码质量的审查清单。当我们在开发写代码的时候,总会各种各样的问题,自测的时候由于太熟悉自己的代码逻辑往往测试不够充分,无法发现问题。
游魂
2020/07/10
1.3K0
前端代码审查清单
Google 使用机器学习解决代码审查评论
代码审查是大规模软件开发过程中的一个重要部分,占用了代码提交人员和代码审查员的大量时间。在这个过程中,审查员会审查代码中的问题,并编写的评论要求作者进行代码更改。在 Google,我们每年看到数百万条审查员的评论,作者们需要花费大约 60 分钟的时间来应对这些评论,并根据评论的文本提出代码更改。我们研究发现,代码作者为解决审查员评论必须付出的工作时间几乎随评论数量线性增长。然而,借助机器学习(ML),我们可以自动化并简化代码审查过程,例如,根据代码审查评论自动给出对应的代码变更。
明明如月学长
2023/07/10
3660
Google 使用机器学习解决代码审查评论
开发高质量软件的秘诀:代码审查、单元测试和持续集成
开发高质量软件是保证软件项目成功的重要因素。以下是三个关键秘诀,分别是代码审查、单元测试和持续集成。
用户1289394
2024/01/29
3660
开发高质量软件的秘诀:代码审查、单元测试和持续集成
基于谷歌代码审查(Code Review)法则的思考与实践
代码审查(Code Review),就是让别人来审查你的代码,其目的就是确保代码库的整体代码运行状况随着时间推移而不断改善。
Peter Shen
2021/07/08
1.2K0
代码审查或评审的最佳实践
现实情况是,代码审查对于每个参与者来说经常是一种令人不舒服的体验,导致审查变得好斗,无效甚至更糟,根本就不存在代码审查。 这是一个快速指南,可帮助您创建有效的代码审查过程。 为什么要进行代码审查? 在审核您的代码审核流程时要回答的第一个问题是:我们的代码审核的目的是什么?当您提出这个问题时,您很快意识到执行代码审查的原因有很多。您甚至可能会发现团队中的每个人都对他们审核代码的原因有不同的看法。他们可能会认为他们正在审查:
lyb-geek
2019/07/22
1K0
代码审查那些事儿
upsource是jetbrain公司出的一个团队协作的代码审查系统,可以配合idea实时显示评论.安装时免费的,但是团队的成员账号不能超过5个.如果超过则需要给钱买授权;免费的适合小组内的代码审查.目前在用,感觉还行.
suveng
2020/02/25
7440
相关推荐
[译] 代码审查之最佳实践
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文