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

48 阅读2分钟

高质量编程与性能调优

Go语言基础

如何用GO编写语言

 

如何编写更简洁清晰的代码

常用GO语言程序优化手段

熟悉GO程序性能分析工具

了解工程中性能优化的原则和流程

 

1.     高质量编程

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

各种边界条件是否考虑完备

异常情况处理,稳定性保证

易读易维护

高质量编程遵循的原则是相通的

简单性

简单清晰的逻辑编写代码,不理解的代码无法修复改进

可读性

需要使得代码可维护,代码主要目的是给人看的

生产力

团队整体工作效率非常重要

 

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

Gofmt自动格式化代码,GO语言官方提供的工具,能自动格式化GO语言代码为官方语言代码为官方统一风格,常见IDE都支持方便的配置

 

注释,解释代码作用,如何做到(情况解释),实现原因,什么情况会出错

变量,常量,函数以及结构都需要注释,任何不明显也不简短的公共功能需要注释,

 

变量命名规范:简洁,缩略词大写,循环内的变量宜短

命名规范核心目标是降低阅读理解代码的成本,重点考虑上下文信息,设计简洁清晰的名称

 

控制流程:线性原理,处理逻辑尽量走直线,避免复杂的嵌套分支,正常流程代码沿着屏幕向下移动,提升代码可维护性和可读性,故障问题大多出现在复杂的条件语句和循环语句中

 

错误和异常处理

error尽可能提供简明的上下文信息链,方便定位问题

panic用于真正异常的情况

recover生效范围,在当前goroutine的被defer的函数中生效

2.     性能调优

性能优化建议 benchmark

性能表现需要实际数据衡量,GO语言提供支持基准性能测试的benchmark工具

Slice, map, 字符串处理,空结构体,atomic包

 

性能调优原则:

要依据数据不是猜测,要定位最大瓶颈而不是细枝末节,不要过早优化,不要过度优化

Pprof是用于可视化和分析性能分析数据的工具

(希望知道应用在什么地方耗费了多少的CPU,Memory)

总结:从实际逻辑,数据,实践中,合理使用的工具的前提下完成优化。