软件质量保障之代码走查

本文阐述了代码走查的目的、场景、角色与流程,强调其在预防线上故障、提升团队编码能力方面的作用。通过定期及重大变更时的走查,确保代码质量,促进团队共同成长。

640?wx_fmt=gif

目的

      代码走查有几个目的,第一个是让新同学快速熟悉代码并了解系统。第二个是做咨询防控的事前检查,避免引发线上故障。第三个是通过一起讨论和审查,加强团队代码阅读和编写能力,让大家编写出优秀的代码。代码走查的优点非常多,但是最核心的还是提前发现问题并解决问题。

      所以基于以上目的,代码走查不是批评而是发现问题共同成长,所以对于写代码的同学不需要过于紧张,但是在代码走查前可以自己看优化一遍,但是变更必须有单元测试覆盖。

      什么场景应该做代码走查?我认为有几个时机点是需要做代码走查的,第一个是定期,每几个月定期做一次代码走查。第二个是有重大变更时做代码走查,如代码第一次上线或增加了比较多的代码。

如何进行代码走查

  • 代码走查的角色

  •        主持人:负责主持整个走查活动,包括会议邀约和控制时间(一般一小时左右)进度。为了让代码走查高效,需要及时阻止不必要的讨论,比如讲解人讲的太发散、或者大家针对一个点讨论时间过长。

  •        讲解人:负责对代码进行讲解并跟进修改计划,一般是系统Owner或代码编写者。

  • 记录人:记录代码走查记录,记录中包括代码走查中发现的问题点、修复方法和最佳实践,问题需要指定到对应的人。

  •        评审人:对代码进行评审发现问题并找出最佳实践,一般是资深开发和测试同学。

  • 参与人:参加代码走查,主要以学习为主。


  • 走查前做好充分准备

      讲解人整理本次要走读的代码分支、系分设计和代码入口,然后发邮件通知大家,参加代码走查的人提前阅读系分和代码,针对看不懂的代码、有问题的代码和设计复杂的代码全部提交Review记录。

      讲解人必须想好走查哪些代码,一般是主流程或有问题的点,控制整个代码走查的时间,我们第一次代码走查花了三个多小时,由于时间太长,走查的过程中开发都走了几个。

  • 走查中控制节奏

       直接讲代码很多没参与的同学会很晕,所以先大致讲下系分设计,不需要全部讲完设计再讲代码,而是讲一部分设计,再讲一部分代码。讲解人带着大家一行一行读代码,讲解代码的含义和思考,记录人负责记录Review出的问题和最佳实践。

代码走查的评判标准,主要关注几个点

  1. 编码规范: 可以使用IDEA的插件自动扫描有没有编码问题。

  2. 设计规范

  3. 幂等性

  4. 逻辑问题:是否满足需求。

  5. 一致性问题

  6. 并发和锁:在并发情况下,代码执行结果是否有问题。

  7. 性能问题:代码是否存在性能问题,预计峰值流量能到多少。

  8. 分支覆盖率:是否有分支没有覆盖


  • 走查后总结

在代码走查之后,要优化代码走查,所以会发一个调查问卷给大家

  1. 参加代码走查有什么收获?

  2. 对代码走查有什么建议?

我们走查完之后有几个改进点

  1. 时间把控:第一次代码走查主持人和讲解人时间没控制好,走查了三个多小时,后续主讲人讲重点,主持人随时控场,讨论超过几分钟的就记录下面,线下讨论。

  2. 重点优先:大家前面精力比较好后面就分神了,后续主讲人优先走查重点代码。

(全文完)

点击下方
阅读原文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值