为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
- 发表时间:2025-06-26 12:00:19
- 来源:
因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
推荐资讯
- 2025-06-28 19:50:16为什么Go仅仅160MB的安装包就可以编译程序,而Rust却还需要几个GB的VC++才能编译?
- 2025-06-28 19:10:16为什么说耿直的人更容易吃亏?
- 2025-06-28 20:20:15数据库不就是增删改查一些数据吗?研发一个数据库到底难在哪了?
- 2025-06-28 20:00:16中国空间站有必要为了迁就外国人而使用英文操作界面吗?
- 2025-06-28 19:50:16毕设答辩,老师说node不可能写后台怎么办?
- 2025-06-28 20:05:16作为一个服务器,node.js 是性能最高的吗?
- 2025-06-28 19:00:16为什么windows的arm版没有被广泛使用?
- 2025-06-28 20:25:15脸与身材不符是种怎样的体验?
- 2025-06-28 18:55:16为什么中国的英语教育这么失败?
- 2025-06-28 19:20:17女生到底应不应该穿***的衣服?
推荐产品
-
为什么微软出的软件都那么巨大?
如果你的 macOS 运行了一年,“系统数据”轻轻松松超过 -
服务器为什么大多用 Linux?
AWS 是这个世界上最大最专业的云服务器供应商。 排第二和第 -
你见过最漂亮的女生长什么样?
最近见了一个,170+,22岁,颜值,身材无敌好,🐻至少D以 -
新修订的治安管理处罚法重构「被殴打还手即互殴」的认定标准,明确正当防卫免处罚,怎样从法律角度解读?
这个比较好一些 在正当防卫的法律构成要件上就存在多个要件。
新闻动态
最新资讯