为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
相关推荐
最新更新
你的亲戚提过什么过分的要求?
小米发布了 REDMI 首款旗舰小平板 K Pad,仅 8.8 英寸,小巧便携,如何评价这一设计?
Rust、Go、Zig、Dart、C3、C++、C,仓颉、moonbit、凹语言哪个语言更有未来?
如何评价腾讯元宝桌面端使用 Rust 的 Tauri 框架?
为什么国内的uni***一直没人讨论呢?
软路由怎么没有人玩了?
生活中怎样的美女才能被称为「大」美女?
鱼缸能不能做到一直不换水还很清澈?
为什么《歌手》不请周杰伦、陈奕迅、王菲、张学友、孙燕姿、梁静茹、王力宏、林俊杰当节目嘉宾?
多个充电宝或电芯品牌的 3C 认证证书被暂停,涉及罗马仕、安克、绿联、倍思、安普瑞斯等,发生了什么?
推荐阅读
猜你喜欢
关注我们

包装项目合作
网站首页
