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

2025-06-27 07:20:15

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

为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
广告位810*200
相关阅读
为什么晚清至建国前出了那么多大师?如辜鸿铭、钱锺书、陈寅恪等。

为什么晚清至建国前出了那么多大师?如辜鸿铭、钱锺书、陈寅恪等。

我学着教员,也把资治通鉴读了几遍。 体会最深的不是什么帝王心...

2025-06-25
Postgres 和 MySQL 应该怎么选?

Postgres 和 MySQL 应该怎么选?

目前来看,主要指标pg全方位优于mysql... 本内容是对...

2025-06-25
有没有GUI框架开发难度小,***消耗又不多,而且又跨平台?

有没有GUI框架开发难度小,***消耗又不多,而且又跨平台?

作为一名Web开发者,多年来一直挺想用Web技术去开发桌面软...

2025-06-25
闲鱼上为什么会有人问都不问直接下单?

闲鱼上为什么会有人问都不问直接下单?

之前遇到一个东北的卖家,买的我爸爸编的竹篮子,运费都比竹篮子...

2025-06-25
go-zero的svc全局变量和Kratos按需利用wire进行依赖注入哪个在实际生产合作中更合适?

go-zero的svc全局变量和Kratos按需利用wire进行依赖注入哪个在实际生产合作中更合适?

知识前瞻学习wire之前,先来看看官方对于wire的介绍,从...

2025-06-25