如何构建高质量高可用的软件
Posted lovesqcc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何构建高质量高可用的软件相关的知识,希望对你有一定的参考价值。
概述
这篇文章主要做一个关于“代码、系统、工程”质量的系列文章的索引。
要构建高质量高可用软件,个人觉得,可以分四层来进行:
- 代码质量: 高质量软件的基石。 任何设计、测试和工程方法都无法挽救烂代码写出来的系统。
- 设计质量: 高可用软件的指引。 高质量软件需要设计质量的指引,合理地划分模块和组合; 高可用软件更需要仔细的设计和权衡。
- 测试质量: 通过良好设计和实现的系统,需要测试质量来把关,保证代码没有重要BUG和变更不影响原有系统。
- 工程质量: 在代码、设计、测试质量的保证下,还需要工程手段(比如持续集成、线上错误巡检等)来聚合所有的环节,保证更好的输出。
代码质量
代码质量的提升,主要可以通过遵循良好的编程风格和习惯、追求和学习编写优秀代码、对代码细节的重视、以及团队CodeReview来实现。 代码能力就像球员的脚法和控球技术,脚法不细腻的人很容易自溃防线。
- 如何编写可信赖的代码
- 一个图片文件批量重命名工具的质量改善过程
- 改善代码可测性的若干技巧
- CR常见代码问题
- CodeReview实践与总结
- 编写更少bug的程序的六条准则
- 如何使错误日志更加方便排查问题
- 反思: 为什么我连普通的程序都写不好?
- 程序健壮性: 正常、错误和异常
- 代码质量准则
- 提高代码可读性: 命名技术
设计质量
设计质量的提升,需要丰富的开发设计经验、对健壮性、稳定性、扩展性、可维护性、高压力承载能力等系统质量指标的全面理解,以及仔细考量避开陷阱。设计质量就像球员对全场的理解和掌控能力,懂得很好的传球和助攻。
测试质量
测试质量的提升,主要可以通过单测、接口测试、压力测试等来保证。
- 使用Groovy+Spock轻松写出更简洁的单测
- 深入探究单元测试编写
- 使用Java函数接口及lambda表达式隔离和模拟外部依赖更容易滴单测
- 输入输出无依赖型函数的GroovySpock单测模板的自动生成工具(上)
- 克服“测试怠惰”的习惯
工程质量
工程质量的提升,主要可以通过持续集成、错误巡检等手段来保证。
以上是关于如何构建高质量高可用的软件的主要内容,如果未能解决你的问题,请参考以下文章