完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
审查正确性 很多时候,程序员们会花费很多时间争论在代码审查过程中应该看什么,但实际上他们却没有花太多时间完成真正的代码审查。 我们开始代码审查的目的是改进代码质量,寻找测试中没有发现的问题。这么做并不是教授经验不足的开发者如何编写更好的代码,或是如何在团队内分享知识。这些都应该是代码审查所带来的间接好处,不过审查的最终目的应该是确保代码能够正常工作。 相对于使用长长的检查列表,审查者在看代码时首先会问几个问题: · 代码的行为是否与预期一致,其逻辑是否是正确无误的? · 被审查的代码是否与其他代码拥有类似的结构和功能? 审查可理解性 随着时间的流逝,在代码审查中寻找和得到的东西会发生变化。这是因为代码本身会发生变化,完成这项工作的人——开发者与审查者也可能发生变化。 这意味着审查者的时间可以花在更加重要的设计错误上,比如说并发Bug、竞态条件和潜在的死锁等,因为这些问题是工具所无法检测到的。 理解,而不是批评 审查的目的是理解代码,确保代码能够正常工作,而不是批评任何人。 在代码审查过程中,请不要掺入诸如“我认为好的代码是什么,你认为好的代码是什么”这样的论战之中。代码审查应该重点关注“我需要完全理解这部分代码才能确保它能够正常工作,如果由我来修复代码中的问题,我是不会这么写的,因此希望你也不要这么来写”。 随着时间的流逝,有些东西会变好,有些则不然 随着时间的流逝,在查看代码时你会发现代码在不断变化。有人发现大部分代码在写完后很少或是从来都不会变化;大部分变更都是发生在代码基中的很小一部分代码上的。 由于审查者会看到相同的代码在不断发生着变化,因此这也会改变他们的审查方式。 避免收益递减 类似于软件开发中的其他实践一样,你最终会发现代码审查有着收益递减的效应,特别是一直在做相同的事情的时候,以相同的方式查看相同的问题。最终会有这样一个阶段,那就是代码审查的价值几乎降到了0。不过这种情况并没有发生在我们身上,我们依然从代码审查过程中获得了很多收益。 即便改进了工具,增强了测试能力,我们依然进行代码审查,因为Bug检查工具、审查与测试会发现不同类型的问题。我们还发现代码审查会让测试更加高效,这是因为如果之前曾经发现过问题,那么开发者与测试者之间就不会出现过多的往复情况。 |
|
相关推荐
|
|
|
|
|
|
|
|
788 浏览 0 评论
4271 浏览 0 评论
如何使用python调起UDE STK5.2进行下载自动化下载呢?
2529 浏览 0 评论
开启全新AI时代 智能嵌入式系统快速发展——“第六届国产嵌入式操作系统技术与产业发展论坛”圆满结束
2929 浏览 0 评论
获奖公布!2024 RT-Thread全球巡回线下培训火热来袭!报名提问有奖!
31479 浏览 11 评论
72907 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 09:02 , Processed in 0.557346 second(s), Total 72, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号