Go语言精进之路:从新手到高手的编程思想,方法和技巧2


测试,性能剖析与调试

理解包内测与外测的差别

有层次地组织测试代码

优先编写表驱动的测试

使用testdata管理测试依赖的外部数据文件

正确运用fake,stub和mock等辅助单元测试

使用模糊测试让潜在bug无处遁形

为被测试对象建立性能基准

使用pprof对程序进行性能剖析

使用expvar输出度量数据,辅助定位性能瓶颈点

使用Delve调试Go代码

标准库

理解Go TCP Socket网络编程模型

使用net/http包实现安全通信

掌握字符集的原理和字符编码方案间的转换

掌握使用time包的正确方式

不要忽略对系统信号的处理

使用Crypto下的密码学包构建安全应用

掌握bytes包和strings包的基本操作

理解标准库的读写模型

掌握unsafe包的安全使用模式

谨慎使用reflect包提供的反射能力

了解cgo的原理和使用开销

工具链与工程实践

使用module管理包依赖

构建最小go程序容器镜像

自定义Go包的导入路径

熟练掌握Go常用工具

使用go generate驱动代码生成

牢记Go的常见“陷阱”