Go 的几大坑

2018-09-30 14:19:21 +08:00
 hijoker
可能有些不准确,别跟我说用了 N 多的 trick 怎么实现了,我说的是开箱即用
1. 接口没有默认实现, 几个数据结构实现了某个接口需要有统一的行为,每个都得写一个几乎同样的方法,太蛋疼了
2. panic 的堆栈信息,捕获是捕获了,我要把他打到日志里去??
3. 日志框架,默认能做到打印行号,打印时间,打印级别,控制按日志级别输出,对日志自动分片压缩的几乎没有
4. 蛋疼的类型信息
6128 次点击
所在节点    Go 编程语言
48 条回复
Leigg
2018-09-30 19:24:56 +08:00
为什么要把 panic 错误打印到日志?这说明程序写的并不够健壮,panic 错误是要爆出来给人看的,不然程序多少暗坑都不知道
reus
2018-09-30 20:49:17 +08:00
1, embedded field
2, runtime.Callers
3, 自己写
4, 蛋疼可能是肾亏
icris
2018-09-30 22:41:13 +08:00
@xkeyideal #6
是 interface 就得自己实现没有什么理论依据啊,连 Java 的 interface 都能放 default 了,Go 以后也不一定不加
xeaglex
2018-10-01 01:06:41 +08:00
@xkeyideal 并非引用传递,看源码就知道了,是值传递了指针成员变量。
blless
2018-10-01 09:14:45 +08:00
我也说一个…遍历一个结构体 slice 然后在循环内部取遍历出来的结构体地址…发现都是同一个地址
sxw11
2018-10-01 09:36:59 +08:00
包管理,泛型,gopath 三大坑!谁用税知道!
mosliu
2018-10-01 10:27:58 +08:00
感觉最大的坑就是包管理
现在 go mod 稍有改善的迹象
wenzhoou
2018-10-01 18:30:21 +08:00
@silov 这个真的是很尴尬啊。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/494161

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX