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 2022-01-12 10:06:55 +08:00
看完后唯一的感觉:这是什么鬼
|
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 1
还是牺牲了 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
|