Go语言典型错误
引言#
100个Go语言典型错误
mistakes#
init#
init 会在包初始化时引入,因此可以通过导入副作用的方式初始化init
1 | _ "github.echin.xxxxx" |
不适合使用 init 的三种情况
- init 会限制错误管理,因为他只能使用
panic
- 全局变量管理管理,因为init的初始化是基于包名字母顺序来实现的,且这个全局变量依赖随时可以改变,一般通过封装变量实现
- 测试复杂度的增加,这个真恶心,详见助手业务的一堆init
init 一般用于 静态数据 的初始化
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Echin の 博客!