Telegram Channel
[ On | No ] syntactic support for error handling - The Go Programming Language

持续了数年之久的 Go Error Handling 之争,算是官方盖棺定论了,结论就是:摆烂。

自从放弃 Go2 方案后,兼容性就成了第一要务,非必要不修改语法。而 Error Handling 虽然长期以来都是社区最不满意的设计,但是关于具体的改进方案始终无法形成压倒性的共识,所以,官方决定,就这样吧,不改了。所有的历史讨论都到此为止,提案也逐步关闭。

并且对一些广受诟病的设计,做出了一些很牵强的解释:

* 语法啰嗦?反正你们有 AI 补全了
* 看起来碍眼?反正现代 IDE 都可以折叠。
* 没有 stack traces?打日志的时候多加一点参数嘛。

写 Go 的朋友喜欢怎么处理 error?我还在用古早的 github.com/pkg/errors 😂
 
 
Telegram Channel