为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
- 发表时间:2025-06-24 07:45:10
- 来源:
因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
推荐资讯
- 2025-06-24 18:55:122025年,Gitea 和 GitLab 应当如何选择?
- 2025-06-24 17:55:13如何看待人口学家称反婚反育言论泛滥成灾,严重危害公共利益和国家人口安全?
- 2025-06-24 18:55:12如果有人自称中央特派员,手持中央密令,到看守所要求提走一个***,看守所会交人吗?
- 2025-06-24 18:05:12女朋友坚决拒绝母乳,我希望就一次行母乳喂养被指责我不顾她的痛苦,我真的很过分吗?
- 2025-06-24 18:45:12下雨了,去哪里钓鱼??下雨了,去哪里钓鱼??
- 2025-06-24 19:10:11为什么好多人不承认大众审美就是喜欢白皮?
- 2025-06-24 18:00:12女朋友是跳拉丁舞的,跳双人舞时会有身体接触,作为男友我感觉有点吃醋怎么办?
- 2025-06-24 17:55:13为什么Rust的包管理器Cargo这么好用?
- 2025-06-24 19:25:11应该如何看待群晖在DSM 7.2.2-72803更新中去掉了Video Station?
- 2025-06-24 17:55:13草龟为啥那么容易死啊?
推荐产品
-
搭建家庭 NAS 服务器有什么好方案?
我觉得我的方案最好。 手机谁都是随身带着,家庭NAS方案再好 -
苹果企业签名哪家好 怎么解决签名掉签问题 ?
还在为 TestFlight 名额爆满、App Store -
陌生人晕倒了,帮他拨打120后,病人不支付120出车费,这个费用谁来承担?
如果病人不出,那就是谁打的120谁出。 比出钱更郁闷的,是你 -
各位都在用Docker跑些什么呢?
飞牛系统(J3455、16G内存) 容器管理:1Panel或
最新资讯

