为什么 Go 语言的 Error Handling 被某些人认为是一个败笔?
因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
相关推荐
最新更新
推荐阅读
猜你喜欢
把《武林外传》中的打工人郭芙蓉放在现代,她能干长久吗?
网传厦门某国企研发部门要求每日考察后端 400 行,前端 1000 行代码量,如属实,这个考核合理吗?
C++有没有类似Python中tkinter的GUI库?
FFmpeg如何利用GPU进行加速,每次都是GPU看戏CPU100%,或者说该说法有根本性错误?
Web后端开发,用Python还是Go呢?
有一个乌克兰的朋友问我,中国人凭什么能享受和平,我该怎么说?
老公想要买2万左右的相机,我该同意吗?
外贸独立站怎么做SEO?
Rust 使用 Result 的错误处理方式与 Golang 使用 error 的方式有什么本质区别?
有没有特别好看的言情类故事,别逼我这尊贵的盐选会员跪下求你?
关注我们

包装印刷加工
网站首页
