登录 / 注册
IT168技术开发频道
IT168首页 > 技术开发 > 技术开发评论 > 正文

如何通过代码审查写出高质量代码

2016-11-18 13:30    it168网站原创  作者: 田晓旭编译 编辑: 田晓旭

  【IT168 评论】代码审查是软件开发中常用的手段,曾有外媒称成就Google如此优秀的企业的功臣之一就是看起来非常简单的代码审查。虽然现在有很多代码审查技术,网络上也流传了很多关于如何编写良好的代码的技术攻略,但这其中良莠不齐,本文旨在为大家梳理出一个适用于大多数语言的代码检查表,为代码审查者提供直观和清晰的审查点,帮助他们尽可能在最短的时间进行有效地审查。

  代码审查的目的

  代码审查的最终目的是找出代码的薄弱点和优势,然后扬长避短,找出合适的方法优化代码以获得更好的性能。 它主要是提供一个无缺陷(至少接近完美)的应用程序,以满足企业要求,并同时满足行业标准。

  代码审查检查表分为两部分:代码审查基本清单和代码审查综合清单。

  代码审查基本清单

如何通过代码审查写出高质量代码

  1. 实现企业要求

  代码能够满足企业要求这是基本的要求。

  2.牢不可破,合理验证

  验证是很必要的。代码在任何情况下都不会中断,所以在遇到来自用户端的无效输入的也不会中断,否定的、过大的或者无效的格式输入应该在进一步处理之前就清理完成,在访问之前,应该要检查每个对象的实际数据是否合理。

  3.处理响应

  不应只是对服务器返回的错误消息进行处理,服务器返回的所有响应都应该处理,而且它还应该具有标题,响应消息,错误代码以及任何其他必要的细节。在测试时要尽量全面的考虑到所有情况,来避免死锁,超时等情况。

  4. 结构设计,无设计偏差

  应用软件设计与功能实现说明文档是程序设计首要做的工作,代码的编写一定要严格遵循此文档,如果出现任何设计更改的情况,那么在现有代码实现之前,就要对其进行记录和标准化。

  5. 单元测试可靠

  每个核心方法都要经过单元测试,确保这些方法都是可用的。

  6. 避免代码重复

  在代码实现的过程中,程序中很可能会出现需要实现相同功能的部分,这时,我们可以考虑把这些相同代码写成函数,然后直接调用,避免代码重复。

  7. 快速响应和可扩展性

  应用程序的响应应该是快速的:请求和响应之间没有长时间的延迟、避免原始字符串连接;代码是可扩展的,能够处理大量的数据和未来可能需要添加的功能。

  8.代码安全

  确保代码在加密认证、角色、未经授权的访问、目录浏览、SQL注入、跨脚本等方面是安全的,并遵循OWASP安全原则。

  代码审查综合清单

如何通过代码审查写出高质量代码

  9.可管理

  代码可读性强,有适当的注释且易于管理,方法的大小不超过可读范围。

  10.标准化方法

  遵循编码惯例和标准,与现有的应用程序代码是一致的,并且不应该存在已被注释了的代码和硬编码。

  11.内存处理

  在使用结束后未自动释放的资源将被释放。连接,端口正确关闭。

  12.可追溯性

  记录每笔交易或需要记录的日志,然后存储在存储库(作为文件)以及数据库(作为文本)中。可以在配置文件(例如web.config)中启用或禁用不同阶段的版本。

  13.代码覆盖率大于95%

  代码覆盖与单元测试用例一样重要。 95%的代码被覆盖意味着95%的代码实际上是通过单元测试用例测试的。

  14.快速

  仅提供需求就可以方便的获取资源,必要时可以处理庞大的数据,如分页等。

  15.数据安全

  运行应用程序时不会出现编译器警告。清除开发过程中使用的日志,并且不会在浏览器控制台中写入任何应用程序信息,特别是敏感的信息。

  16.第三方工具许可

  在必要时应用程序可能会使用外部库,如果它是第三方工具,那么它的许可证和法律用途必须合规。

  高质量的代码不仅可以完全满足用户的要求,同时它在可扩展性和快速响应方面也应该表现出色。在这个各种追求速度的糙快猛创业公司遍地的世界,如果你能真正的沉下心来写好代码,脱颖而出指日可待。

相关文章
  • IT168企业级IT168企业级
  • IT168文库IT168文库

扫码送文库金币

实时热点
编辑推荐
系统架构师大会
系统架构师大会
点击或扫描关注
IT168企业级微信关注送礼
IT168企业级微信关注送礼
扫描关注
首页 评论 返回顶部