数据API 案例 开发者 关于
掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

Code Review的7个最佳实践

成为一名好的代码审核人员并不是一件容易的事情。4个月前,我突然意识到我需要提高自己的代码审核能力。以下就是一些我觉得非常实用的技巧。

1. 在团队中明确审核目标

你应该花时间和团队中的每一个人谈谈你对代码审核的目标,对代码的要求。假如你在进行代码审核的时候所追求的是代码样式的连贯性,而团队中的其他人以为你是在寻找bug,那么你们之间将很难良好的进行合作。只有所有人都明确了目标之后,你们才能让工作更有效率。

2. 运行应用,尝试使用各种功能

阅读代码并不是与应用进行互动的好方法。如果你想要通过阅读代码来找bug,那么你必须要有多年的经验。真正好的代码审核,应该是让代码运行起来。在运行应用的时候,你很有可能找到一些代码作者忽略的东西。

3. 方法调用等级可视化

我经常发现自己会忽略一些细节,因此我需要找到一种方式来强迫自己更深入的理解代码。有的时候,我会通过涂鸦来画出方法与方法、对象与对象之间的关系,例如哪种方法使用了其他的哪个方法,我发现这种可视化的理解方式非常有效。

4. 收到请求后立刻进行审核

只要看到团队成员发来的审核请求,我都会立刻开始审核。你的同事将会非常高兴,而他们的配合也能让你成长的更快

有的时候你可能很难立刻完成审核工作,例如改动很多的情况下。如果你发现自己无法快速完成审核,你可以使用下面两个小技巧:

  1   设定时间,例如半个小时。在刚开始的时候,你应该尝试去理解代码中的变更,然后写下问题。半个小时之后,如果你觉得这些代码可以通过,那就通过。如果你觉得还有问题,那就给代码作者写一封邮件,把你的想法和问题写出来。

  2   在你的电脑上安装两个独立的repo,一个用来储存你自己做出的变更,另一个用来储存你正在审核的代码。这样一来,编译其他同事的代码的时候,就不会影响你自己的代码了。

5. 阅读代码之前,先想想你自己会对原代码做出什么样的变更

先阅读功能描述,然后做一个列表,上面写下你希望对哪些文件做出变更。然后再阅读代码作者提交的文件,看看和你预想的是否一致。如果他们做的和你想的不一样,试着找到原因。

6. 在真实开发环境中审核变更

大多数情况下,Phabricator和GitHub的作用,是让你看到文本之间的区别。而AppCode、IntelliJ和RubyMine这样的编辑器,才能让你看到真正的代码。你应该在自己的电脑上用这些编辑器阅读代码,这样你能看到编译错误、警告和测试失败等信息。

除此之外,你还应该对整个文件进行审核,而不仅仅是存在变更的那一行。这样做能让你确保和变更相关的所有代码都不会受到影响。

7. 除非你能找到bug,否则不要拒绝批准代码变更

当你要求代码作者进行变更的时候,你应该相信他能够胜任这个工作。一些简单的变更,例如对变量进行重命名、或是提取重复方法等,这样的变更你应该直接批准通过。

如果你因为样式不统一等小问题让代码作者等的时间太长,那么从长远来看,代码的质量将会降低,因为代码作者将不愿意对小问题进行修改和变更,从而让代码的可读性降低。

如果你真的觉得某个作者的代码不足以获得批准通过,那你就应该直接告诉对方,然后找一个合适的人来对代码进行调整。另外你还需要仔细,如果你只是忘记了通过某个作者的变更,也许你觉得不是什么大事,但是在代码作者看来,他不知道你仅仅是忘记了点击按钮,他们有可能觉得自己的代码有错误,甚至觉得你不尊重他的工作。

摘要转自湾区日报

—————————————————————————————————————————————————

z19dkBTd7ZzY2cL_s252.jpg

扫码关注SDK.cn订阅号

随时随地看精选文章

第一时间获取热点推送

原文来自:SDK.cn

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务
Code Review的7个最佳实践
发布:2016-12-26

成为一名好的代码审核人员并不是一件容易的事情。4个月前,我突然意识到我需要提高自己的代码审核能力。以下就是一些我觉得非常实用的技巧。

1. 在团队中明确审核目标

你应该花时间和团队中的每一个人谈谈你对代码审核的目标,对代码的要求。假如你在进行代码审核的时候所追求的是代码样式的连贯性,而团队中的其他人以为你是在寻找bug,那么你们之间将很难良好的进行合作。只有所有人都明确了目标之后,你们才能让工作更有效率。

2. 运行应用,尝试使用各种功能

阅读代码并不是与应用进行互动的好方法。如果你想要通过阅读代码来找bug,那么你必须要有多年的经验。真正好的代码审核,应该是让代码运行起来。在运行应用的时候,你很有可能找到一些代码作者忽略的东西。

3. 方法调用等级可视化

我经常发现自己会忽略一些细节,因此我需要找到一种方式来强迫自己更深入的理解代码。有的时候,我会通过涂鸦来画出方法与方法、对象与对象之间的关系,例如哪种方法使用了其他的哪个方法,我发现这种可视化的理解方式非常有效。

4. 收到请求后立刻进行审核

只要看到团队成员发来的审核请求,我都会立刻开始审核。你的同事将会非常高兴,而他们的配合也能让你成长的更快

有的时候你可能很难立刻完成审核工作,例如改动很多的情况下。如果你发现自己无法快速完成审核,你可以使用下面两个小技巧:

  1   设定时间,例如半个小时。在刚开始的时候,你应该尝试去理解代码中的变更,然后写下问题。半个小时之后,如果你觉得这些代码可以通过,那就通过。如果你觉得还有问题,那就给代码作者写一封邮件,把你的想法和问题写出来。

  2   在你的电脑上安装两个独立的repo,一个用来储存你自己做出的变更,另一个用来储存你正在审核的代码。这样一来,编译其他同事的代码的时候,就不会影响你自己的代码了。

5. 阅读代码之前,先想想你自己会对原代码做出什么样的变更

先阅读功能描述,然后做一个列表,上面写下你希望对哪些文件做出变更。然后再阅读代码作者提交的文件,看看和你预想的是否一致。如果他们做的和你想的不一样,试着找到原因。

6. 在真实开发环境中审核变更

大多数情况下,Phabricator和GitHub的作用,是让你看到文本之间的区别。而AppCode、IntelliJ和RubyMine这样的编辑器,才能让你看到真正的代码。你应该在自己的电脑上用这些编辑器阅读代码,这样你能看到编译错误、警告和测试失败等信息。

除此之外,你还应该对整个文件进行审核,而不仅仅是存在变更的那一行。这样做能让你确保和变更相关的所有代码都不会受到影响。

7. 除非你能找到bug,否则不要拒绝批准代码变更

当你要求代码作者进行变更的时候,你应该相信他能够胜任这个工作。一些简单的变更,例如对变量进行重命名、或是提取重复方法等,这样的变更你应该直接批准通过。

如果你因为样式不统一等小问题让代码作者等的时间太长,那么从长远来看,代码的质量将会降低,因为代码作者将不愿意对小问题进行修改和变更,从而让代码的可读性降低。

如果你真的觉得某个作者的代码不足以获得批准通过,那你就应该直接告诉对方,然后找一个合适的人来对代码进行调整。另外你还需要仔细,如果你只是忘记了通过某个作者的变更,也许你觉得不是什么大事,但是在代码作者看来,他不知道你仅仅是忘记了点击按钮,他们有可能觉得自己的代码有错误,甚至觉得你不尊重他的工作。

摘要转自湾区日报

—————————————————————————————————————————————————

z19dkBTd7ZzY2cL_s252.jpg

扫码关注SDK.cn订阅号

随时随地看精选文章

第一时间获取热点推送

原文来自:SDK.cn

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

选择想要的接口, 看看能免费获取多少次调用 选择(单选)或填写想要的接口
  • 短信API服务
  • 银行卡四元素检测[简]
  • 身份证实名认证
  • 手机状态查询
  • 三网手机实名制认证[简]
  • 身份证OCR识别
  • 风险信息查询
  • 企业工商信息
短信API服务
  • 短信API服务
  • 银行卡四元素检测[简]
  • 身份证实名认证
  • 手机状态查询
  • 三网手机实名制认证[简]
  • 身份证OCR识别
  • 风险信息查询
  • 企业工商信息
  • 确定
选择您的身份
请选择寻找接口的目的
预计每月调用量
请选择预计每月调用量
产品研发的阶段
请选择产品研发的阶段
×

前往领取
×
企业用户认证,
可获得1000次免费调用
注册登录 > 企业账户认证 > 领取接口包
企业用户认证领取接口包 立即领取
× 企业用户认证,
可获得1000次免费调用,立即领取>
数 据 驱 动 未 来
Data Drives The Future