Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

Code Review 的用意

  我是一直都提倡 Code Review 的。但 Code Review 主要目的不是为了避免代码出 Bug,因为很多时候业务逻辑复杂到不是光 Review 代码就能看出问题的。我觉得 Code Review 更重要的目的是磨合团队的代码风格,同时通过互相学习来提供团队平均水平。
  大家肯定都有自己的编码风格。在一个团队中如果大家都各写各的,那么整个项目就会变成一坨根本无法阅读的东西。解决这个问题最直接的办法就是 Code Review,大家一起互相 Review 可以磨合团队的编码风格,让整个团队的风格逐渐稳定下来。
  Code Review 本来的目的是为了避免一些脑残代码把产品搞挂了。但这并不适用于所有项目,还得看是什么样的项目结构和技术方向。直接操作数据库的后端代码确实非常有 Code Review 的必要。因为 SQL 是很危险的,一个不小心可能就会跑挂整个数据库服务器。不涉及数据库的后端代码可能就没那么严肃,但 Code Review 确实可以避免很多安全漏洞。比如某些地方忘记做授权之类的 Bug。最后再说前端代码,我觉得 Review 能解决的问题就更少了。因为前端这东西代码再烂也能跑,对用户可能完全没有影响。而且如果是基于 Angular 或 React 这样的重量级框架来开发的话连 XSS 之类的问题想出现都很难。
  上面这么说并不是让大家不要 Review 前端代码,而是换一种心态去 Review。Code Review 如果是为了提高团队整体水平,为了磨合团队风格,那不是比避免 Bug 更有意义么?
  说到磨合团队编码风格很多人就会想到缩进、空格之类的基本代码风格。很多时候 Review 过程中也只是找出一些这种程度的东西。这样的 Review 虽然不能说没意义,但是它确实没有创造任何价值。我觉得检查空格和缩进这种程度的事情应该由机器来做才对!让人去完全就是产能浪费。我所说的磨合团队代码风格主要是技术的选择上。比如很多人喜欢用 for 语句来遍历数组,另一部分人喜用用 forEach 方法来遍历数组,甚至还有使用框架提供的方法来遍历数组的。把这些不同的风格统一起来才叫磨合团队编码风格。当然这里也只是举个例子,遍历数组这种东西也可以在代码规范的层面上做好。
  Code Review 的每个 comment 都应该能让别人或自己得到提高,这才是 Code Review 的用意。
网名:
3.84.186.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^