![]() | 1 abersheeran 2022-01-12 09:27:22 +08:00 确实有点怪……主要 Golang 风格不这样,乍一看不太适应 |
![]() | 2 Wenco 2022-01-12 09:32:12 +08:00 每行都 Try ,这跟 if err 比到底方便在哪里== |
![]() | 3 fgwmlhdkkkw 2022-01-12 09:36:06 +08:00 这不是更…… |
![]() | 4 kiripeng 2022-01-12 09:46:01 +08:00 写完一分钟 debug2 小时,交接半天 |
5 richangfan 2022-01-12 09:52:01 +08:00 忘了 try...catch...吧 |
![]() | 6 wellsc 2022-01-12 10:02:48 +08:00 alias try{} catch{} = if err != nil{} |
![]() | 7 fregie 2022-01-12 10:03:55 +08:00 看到这个甚至想破口大骂,并不是说 try catch 一定不好,为啥不直接用支持的语言呢? |
![]() | 8 SingeeKing PRO 看完后唯一的感觉:这是什么鬼 |
![]() | 9 sujin190 2022-01-12 10:08:44 +08:00 其实既然这么纠结于 err 这个问题,以其做这种更丑陋的方案,为啥不更进一步,直接用 panic 加 recover 的逻辑做一个 try...catch 就是了啊,反正 golang 自己就能操作自己的底层内存栈堆,panic 加 recover 本来也实现好了调用栈回收的过程,汇编编写个函数,调整一下 try 位置生成的汇编代码应该是可以实现的吧,仅猜测,不知有没有大神研究过这个问题 |
![]() | 10 Kilerd 2022-01-12 10:09:28 +08:00 这时候才显示出 Rust 的 Try trait 和 ? 语法的强大性。不然总有人觉得 go 加上泛型就能再次吊打 Rust 。 |
![]() | 11 Reficul 2022-01-12 10:34:14 +08:00 然后出啥问题栈都在最后的 Do 里 |
![]() | 12 zoharSoul 2022-01-12 10:42:23 +08:00 这个有点像 rust, 不太像 try catch |
13 littlewing 2022-01-12 10:48:54 +08:00 并不喜欢 try cache ,if err 挺好的啊,写 c++也从来不用 try cache |
![]() | 14 Zwying 2022-01-12 10:57:41 +08:00 我选择 if err |
![]() | 15 buzz2d0 2022-01-12 11:04:50 +08:00 好家伙,不如直接写 if err 了呀 |
![]() | 16 XTTX 2022-01-12 11:05:25 +08:00 ![]() 还是牺牲了 readability, 换回来 syntax sugar 和把一堆不相关的 func 生硬地连起来 |
![]() | 17 coosir 2022-01-12 11:06:32 +08:00 @littlewing 可以看出来,你确实不太写 try catch |
![]() | 18 XTTX 2022-01-12 11:08:52 +08:00 如果真的那么喜欢 try catch ,干嘛不直接用 js 写后台就好了。err 类型多,最好还是用 switch. |
![]() | 19 Mohanson 2022-01-12 11:09:17 +08:00 看看 doa 吧: https://github.com/godump/doa |
![]() | 20 ly020044 2022-01-12 13:20:58 +08:00 这样写我感觉会疯掉 |
![]() | 21 kindjeff 2022-01-12 14:11:08 +08:00 有点像 reddit 上一个尝试用 go 泛型写链式 future promise 语法和回调的项目,被群嘲 |
![]() | 22 Kisesy 2022-01-12 14:35:55 +08:00 感觉有点像依赖注入 |
![]() | 23 amwyyyy 2022-01-12 14:36:31 +08:00 接手的同事:wdnmd |
![]() | 24 Pengxiguaa 2022-01-19 12:48:10 +08:00 楼主似乎是改了库名,https://github.com/ez4o/go-try |