
优秀的代码审查会挑战你的假设并给你建设性的反馈。对我来说,代码审查是作为软件工程师成长的重要组成部分。
编写代码是一个私密的过程。软件工程师花费数年时间学习软件工程的技艺,当我们的作品受到严厉批评时,很难不把它当作个人攻击。我发现自己有时在听到批评时会变得防御性。我知道审查者是善意的,但这并不总是令人安慰。如果没有一些杰出软件工程师的诚实反馈,我不会成为今天这样的软件工程师。
代码审查的好处
1. 发现错误
有时仅仅是阅读代码这个简单的事实就能发现错误。有时是其他开发者发现了错误。无论如何,简单地走查代码就足以暴露潜在的问题。
我把我的错误看作是磨砺我宝剑的磨刀石。引用迈克尔·乔丹的话:
在我的职业生涯中,我投失了超过9000次投篮。我输掉了将近300场比赛。26次,我被委以重任投制胜球却失手了。在我的生活中,我一次又一次地失败。这就是我成功的原因。
2. 知识传递
与他人分享你的工作是令人谦卑的。在很多方面,你就是代码。我知道当我分享我的代码时会感到脆弱。
这是一个向其他工程师学习和教授的绝佳机会。在分享你的代码时,你正在带领审查者踏上一段旅程,一段深入代码和了解你的旅程。从你编写代码的方式可以了解到很多关于你的信息。
在代码审查结束时,审查者应该对代码如何工作、背后的理由有很好的理解,并且会对你有一些了解。
3. 改善代码健康度
正如我提到的,你阅读代码的次数越多,代码就变得越好。审查者越多,其中一个人建议改进的机会就越大。有些人可能认为技能水平很重要,其实不然。经验较少的软件工程师没有经验丰富的软件工程师那样深厚的技术知识,但他们也不必穿越所有的心理技术包袱来看到改进的机会。
代码审查给了我们评估代码的好处。总会有一些东西可以改变,让它变得更好一点。
从这个角度来说,编码很像写作。要让一篇好作品成形,代码必须休息并重新阅读。你重复这个过程的次数越多,代码就会变得越好。
总结
有些公司没有正式进行代码审查,这没关系。寻找其他工程师。大多数软件工程师会很乐意花10到15分钟来查看你的代码。
作者:Chuck Conway 专注于软件工程和生成式人工智能。在社交媒体上与他联系:X (@chuckconway) 或访问他的 YouTube。