为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
相关推荐
最新更新
推荐阅读
猜你喜欢
有人说24GB和48GB内存容量是新一代电脑平台最均衡的方案,真的是这样吗?电脑内存应该如何选?
为什么 Windows 的兼容性这么强大,到底用了什么技术?
消息称苹果 macOS 26 将不再支持部分旧款英特尔 CPU 机型,这背后原因有哪些?
程序员平时都是CRUD开发工作,真的需要深入理解原理性的知识点吗?
韩国掀起打「增高针」风潮,增高针真的能增高吗?会对身体产生哪些影响?
你曾看到空乘做过的最傻的事情是什么?
为什么中医一千多年没有出现理论大创新了?
如何用防火墙禁止软件联网?
如何评价最新发布的 vivo X Fold5,作为首款「三防」折叠屏手机,都有哪些亮点值得关注?
为什么 Bun 选择了 Zig 以及 JSCore?
关注我们

包装用纸
网站首页
