为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?

摘要: 为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?_云南省临沧市双江拉祜族佤族布朗族傣族自治县冰西视讯会议系统有限合伙企业

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

为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
燕赵镇更多
亨通镇更多
板浦镇更多
乌迳镇更多
巷贤镇更多
菁盛乡更多
为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?_云南省临沧市双江拉祜族佤族布朗族傣族自治县冰西视讯会议系统有限合伙企业 为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?_云南省临沧市双江拉祜族佤族布朗族傣族自治县冰西视讯会议系统有限合伙企业