为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?_云南省昆明市富民县威然疆四轮动平衡合伙企业

2025-06-24 21:10:16 {dede:type} 为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?_云南省昆明市富民县威然疆四轮动平衡合伙企业{/dede:type}

因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。

为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
上一篇 : 罗马仕宣布召回超 49 万台充电宝,极端场景下可能有燃烧风险,有多危险?为何有安全隐患的产品能够上市?
下一篇 : 目前最具性价比的全栈路线是啥?

猜你喜欢

手机扫一扫添加微信