代码审查:网站或应用的所有者为什么需要它

阅读约需1分钟

您经营着一个网站、一家网店或一个小应用。代码是别人写的:外包开发者、朋友、早已不再合作的公司,或者是您自己看了几个周末的教程后写的。它大体上能用。但您无法判断它是扎实可靠,还是靠胶带勉强粘在一起。代码审查就是请一个没有参与编写的人再看一遍,在小问题变成大麻烦之前回答这个问题。

网站或应用的代码审查

什么时候值得审查

  • 在为完成的工作付款之前。 审查能看出您收到的代码是合理的,还是到处偷工减料。
  • 当您接手一个项目时。 没有文档的遗留代码,在有人讲清楚之前就是一个黑盒子。
  • 当某个东西反复出问题时。 表单时好时坏,页面加载很慢,错误每次修完都会再出现。
  • **在上线或大促之前,**这时一个 bug 就意味着真金白银的损失。
  • **当您自己写代码时,**想知道哪里可以做得更好。

审查能发现什么

审查者逐行阅读代码,查找:

  • Bug: 在某些情况下会出错的逻辑,比如购物车为空、日期在月底,或者名字里带撇号。
  • 风险点: 写死在代码里的密码、未经检查就使用的用户输入、透露过多信息的错误提示。
  • 薄弱环节: 现在能用,但流量增长或某个库更新后就会出问题的代码。
  • 可读性: 含义不清的命名、过长的函数和重复的代码,会让以后的每一次修改都更慢、更贵。

问题会按重要程度排序,这样您就知道先修什么、什么可以等一等。

审查不做什么

审查是阅读和解释代码;它不会在您的服务器上运行代码,也不会测试您正在运行的网站。它不是完整的安全审计,也不是压力测试。请把建议的修复当作提议:负责维护项目的人应在上线前逐一测试。

如何选择要发送的代码

很少需要整个网站的代码。挑出最重要的部分:

  • 涉及资金的地方: 结账、支付、价格和折扣。
  • 用户输入内容的地方: 注册、登录、联系表单和搜索表单。
  • 出问题的地方: 您看到的错误背后的那个文件或函数。

从对的地方挑出几百行代码,比把所有代码堆成几千行更能说明问题。

如何准备代码

  • 删除机密信息。 把密码、API 密钥和客户数据替换成占位符,例如 PASSWORD_HERE。
  • **注明语言和版本,**例如 PHP 8 或使用 React 的 JavaScript。
  • 用一两句大白话描述代码应该做什么。
  • **完整复制确切的错误信息,**如果有的话。
  • 说明重点关注什么: bug、速度、可读性还是风险点。

如何使用审查结果

把审查结果交给负责维护代码的人,商定修复顺序,从严重的问题开始。如果您自己不懂技术,通俗易懂的总结能帮您提出正确的问题,并判断对方的回答。

总结

代码审查是一次独立的检查,能赶在您的客户之前发现 bug、风险点和薄弱环节。如果您需要,可以订购代码审查:您粘贴最多 100、400 或 1,000 行代码并描述出了什么问题,即可收到一份书面说明,内容包括代码的作用、按重要程度排序的问题清单,以及可在您自己的项目中测试的修正代码片段。只有在您验收后才会放款。