这是我参与「第五届青训营 」伴学笔记创作活动的第 3 天
一、本堂课重点内容:
- 高质量编程
- 性能调优实战
二、详细知识点介绍:
1.1简介
高质量:编写的代码能够达到正确可靠,简洁清晰的目标
注意以下三点
- 各种边界条件是否考虑完备
- 异常情况处理,稳定性保证
- 易读易维护
编程原则:
- 简单性,以简单清晰的逻辑编写代码
- 可读性,编写可维护代码的第一步就是确保代码可读
- 生产力,团队整体工作效率非常重要
1.2编码规范
- 代码格式
- 注释
- 命名规范
- 控制流程
- 错误和异常处理
推荐使用gofmt自动格式化代码
1.3编码规范-注释
注释:解释代码作用,是如何做的,实现的原因还有何时会出错
注意公共符号始终要注释
包中声明的每个公共的符号:变量、常量、函数以及结构都需要注释
不明显也不简短的公共功能必须注释
对于库中任何函数都要注释
例外:不需要注释实现接口的方法
1.4命名规范
注意简洁
变量距离使用的地方越远,名字就要带更多的信息
全局变量在名字中需要包含更多信息,使得在不同地方可以轻易辨认出它的含义
像一个计数器变量只在循环中出现的,比如i和index
把循环的i改成index名字长了,但是几乎没有增加对程序的任何理解
函数名尽量简短,可以在函数名中补充返回类型的信息
不要使用常用变量作为包名
核心目标还是降低阅读理解代码成本
1.5控制流程
尽量减少循环嵌套的情况,故障问题大多出现在复杂的条件语句和循环语句中
1.6错误和异常处理
优先使用errors.New来创建匿名变量
不建议在业务代码中使用panic
注意defer语句是后进先出
1.7性能优化建议
Go语言提供了benchmark工具
使用becnchmark来看程序每次执行花费的时间和内存
使用slice的时候尽可能在make()初始化切片时提供容量信息
三、课后个人总结:
又是好多知识的一天,感觉进度很快hhh,对于基础不好的我需要很多的时间来进行消化总结
四、引用参考:
第五届字节跳动青训营 Go高质量编程与性能调优