高质量编程与性能调优实战|青训营

64 阅读2分钟

高质量编程与性能调优实战

01.高质量编程

1.1 简介

什么是高质量

编写的代码能够达到正确可靠、简洁清晰的目标可称之为高质量代码。

  • 各种边界条件是否考虑完备
  • 异常情况处理,稳定性保证
  • 易读易维护
编程原则

实际应用场景千变万化,各种语言的特性和语法各不相同;但是高质量编程遵循的原则是相通的。

  1. 简单性
  • 消除“多余的复杂性”,各种语言的特性和语法各不相同
  • 不理解的代码无法修复改进
  1. 可读性
  • 代码是写给人看的,而不是机器
  • 编写可维护代码的第一步是确保代码可读
  1. 生产力
  • 团队整体工作效率非常重要

1.2 编码规范

如何编写高质量的Go代码

  • 代码格式
  • 注释
  • 命名规范
  • 控制流程
  • 错误和异常处理

1.2.5 错误和异常处理

error尽可能提供简明的上下文信息链,方便定位问题,panic用于真正异常的情况,recover生效范围,在当前goroutine的被defer的函数中生效。

panic
  • 不建议在业务代码中使用panic
  • 调用函数不包含recover会造成程序崩溃
  • 若问题可以被屏蔽或解决,建议使用error代替panic
  • 当程序启动阶段发生不可逆转的错误时,可以在init main 函数中使用panic
recover
  • recover只能在被defer的函数中使用
  • 嵌套无法生效
  • 只在当前goroutine生效
  • defer语句是后进先出
  • 如果需要更多的上下文信息,可以recover 后在log中记录当前的调用栈

1.3 性能优化建议

简介

  • 性能优化的前提是满足正确可靠、简洁清晰等质量因素
  • 性能优化是综合评估,有时候时间效率和空间效率肯可能对立
  • 针对Go语言特性,介绍Go相关的性能优化建议

02.性能调优实战

总结

通过课程对高质量编程的学习,主要对错误和异常处理规范详细了解,还有一些我认为的额外应该注意的规范:

  1. 图片优化:在保证图片清晰度的前提下,尽可能压缩图片大小,采用合适的图片格式,还可以使用懒加载
  2. 详细的文档配置;
  3. 制定合理的项目分配工作及项目版本控制:如使用git管理代码,就能保证代码出现各种复杂情况后可以找回。