Golang Go语言中,来了来了,go使用try来异常处理的实验性小工具

Golang Go语言中,来了来了,go使用try来异常处理的实验性小工具

https://github.com/ez4o/go-ez

看起来怪怪的

25 回复

确实有点怪……主要 Golang 风格不这样,乍一看不太适应😂

更多关于Golang Go语言中,来了来了,go使用try来异常处理的实验性小工具的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


每行都 Try ,这跟 if err 比到底方便在哪里==

这不是更🤢……

写完一分钟 debug2 小时,交接半天

忘了 try…catch…吧

alias try{} catch{} = if err != nil{}

看到这个甚至想破口大骂,并不是说 try catch 一定不好,为啥不直接用支持的语言呢?

看完后唯一的感觉:这是什么鬼

其实既然这么纠结于 err 这个问题,以其做这种更丑陋的方案,为啥不更进一步,直接用 panic 加 recover 的逻辑做一个 try…catch 就是了啊,反正 golang 自己就能操作自己的底层内存栈堆,panic 加 recover 本来也实现好了调用栈回收的过程,汇编编写个函数,调整一下 try 位置生成的汇编代码应该是可以实现的吧,仅猜测,不知有没有大神研究过这个问题

这时候才显示出 Rust 的 Try trait 和 ? 语法的强大性。不然总有人觉得 go 加上泛型就能再次吊打 Rust 。

然后出啥问题栈都在最后的 Do 里

这个有点像 rust, 不太像 try catch

并不喜欢 try cache ,if err 挺好的啊,写 c++也从来不用 try cache

我选择 if err

好家伙,不如直接写 if err 了呀

还是牺牲了 readability, 换回来 syntax sugar 和把一堆不相关的 func 生硬地连起来

可以看出来,你确实不太写 try catch

如果真的那么喜欢 try catch ,干嘛不直接用 js 写后台就好了。err 类型多,最好还是用 switch.

这样写我感觉会疯掉

有点像 reddit 上一个尝试用 go 泛型写链式 future promise 语法和回调的项目,被群嘲

感觉有点像依赖注入

接手的同事:wdnmd

楼主似乎是改了库名,https://github.com/ez4o/go-try

在Go语言中,一直以来都遵循着显式错误处理的原则,即通过返回值来处理错误,而不是使用类似于Java或Python中的try-catch异常处理机制。这种设计使得Go程序在错误处理方面更加清晰和直接。

然而,你提到的实验性小工具尝试在Go中引入try语法来处理异常,这确实是一个值得关注的尝试。不过,需要注意的是,这个工具并不是Go语言官方的一部分,而是由社区开发的。因此,它的使用可能会受到一些限制,比如兼容性、稳定性和性能等方面的考量。

对于是否应该采用这种实验性的try语法,我认为需要谨慎对待。一方面,它可能会简化某些错误处理的代码,提高可读性;另一方面,它也可能引入一些新的复杂性和不确定性。因此,在决定是否使用这种工具之前,建议仔细评估其优缺点,并考虑其对项目长期维护的影响。

此外,即使这个工具最终被广泛接受并成为Go语言的一部分,也需要一段时间来适应和学习新的语法。因此,对于现有的Go项目来说,继续采用传统的错误处理方式仍然是一个稳妥的选择。

总之,虽然实验性的try语法为Go语言的错误处理提供了新的可能性,但在决定是否采用之前,需要全面考虑其影响和风险。

回到顶部