这是我参与「第五届青训营」伴学笔记创作活动的第 3 天 通过此次课程可以学到:
- 如何编写更简洁清晰和高质量代码的代码
- 常用Go语言程序优化手段
- 熟悉Go程序性能分析工具
- 了解工程中性能优化的原则和流程
高质量编程
常见编码规范
-
高质量代码是什么?
-
编写的代码能够达到正确可靠、简洁清晰、无性能隐患的目标就能称之为高质量代码
• 各种边界条件是否考虑完备
• 异常情况处理,稳定性保证
• 易读易维护
-
实际应用场景千变万化,各种语言的特性和语法各不相同,但是高质量编程遵循的原则是相通的
-
高质量的编程需要注意以下原则:简单性、可读性、生产力
-
-
为什么要写高质量代码?
-
提升可读性,风格一致的代码更容易维护、需要更少的学习成本、团队合作成本,同时可以降低 Review 成本
-
性能优化
-
使用 Benchmark 进行基准测试;
-
尽可能为 slice 和 map 预分配内存(通过在
make时指定容量信息); -
注意为切片创建切片不会创建新的底层数组,这可能会导致内存泄漏发生,此时可用
copy代替 re-slice; -
多个字符串拼接时,使用
strings.Builder比直接使用+或使用bytes.Buffer更快(这和 Java 倒是十分相似,Java 也推荐使用StringBuilder拼接多个字符串;其实他们的底层逻辑都是类似的); -
当需要占位符时,可使用空结构体(
struct{})代替,其不会占据镇和内存空间; -
使用
atomic包代替锁修改变量;