GO 2 设计草案公布了

2018-08-29 10:37:51 +08:00
 feiyuanqiu

https://go.googlesource.com/proposal/+/master/design/go2draft.md

主要涉及社区呼声最高的痛点:泛型,错误处理。 但是习惯了 Java,看这个语法感觉有点奇怪...

8416 次点击
所在节点    Go 编程语言
52 条回复
duanquanyong
2018-08-29 13:44:05 +08:00
其实如果觉得 rust 好,如果什么都要跟 rust 一样,为什么不直接用 rust 呢。。。。。。
duanquanyong
2018-08-29 13:51:16 +08:00
很多人吐槽错误处理机制,我倒是觉得这种挺好的,这种错误处理方式虽然看起来丑,其实跟 defer 和 panic 的处理方式是一样的,同时能更好地兼容以前的代码,如果用 try...catch 那基本 go1 那跟以前的代码没办法兼容,到时候 go1 的库 go2 用不了,才会真正割裂吧
YingJie
2018-08-29 13:51:51 +08:00
golang 的语法真的受不了,非要标新立异,越写越难受,比这更难受的是一部分 go 吹,无脑崇拜。
merin96
2018-08-29 13:55:05 +08:00
这他妈还不如不改
reus
2018-08-29 13:58:46 +08:00
v2ex 里的无脑黑都来了,帖子里充满了快活的气氛
natscat
2018-08-29 14:11:03 +08:00
慢慢就习惯了
PythonAnswer
2018-08-29 14:13:16 +08:00
check 切克闹 煎饼 go 子来一套
vincenteof
2018-08-29 14:23:10 +08:00
发表一点主观的看法,这语法是我所有学过的语言里最丑的
dhssingle
2018-08-29 14:32:19 +08:00
每一行都要 check ?蛋疼
specita
2018-08-29 14:40:20 +08:00
感觉错误处理那里并没有减少多少代码量。。
ChristopherWu
2018-08-29 14:40:49 +08:00
曾经的 golang 『粉』,现在觉得 golang 真鸡儿丑。
设计的也不优雅,改了 handle error,想方便一些是好事-_-
还是觉得有点丑..
Hellert
2018-08-29 14:44:42 +08:00
这个错误处理方式违反直觉,正常思维先发生操作,后处理错误,这个设计是把错误处理放到代码最前面了。

泛型语法可以接受,但为什么不直接用<>而用 type 关键字,尖括号更简单点吧。
fatedier
2018-08-29 15:11:57 +08:00
Feedback. The most useful general feedback would be examples of interesting uses that are enabled or disallowed by the draft design. We ’ d also welcome feedback about the points above, especially based on experience with complex or buggy error handling in real programs.

We are collecting links to feedback at golang.org/wiki/Go2ErrorHandlingFeedback.

与其一句话吐槽,不如各抒己见,贡献自己的 idea.
crazyneo
2018-08-29 15:22:35 +08:00
那个错误处理什么金箔语法,每个可能出错的地方我都得加 check ?还不如 c-style 的返回值判断,rust 那种也可以啊。
至于楼上说 exception 的,考虑过 C++的 exception 里到底多少坑?完全违反 RAII 的基本内存管理原则,这玩意能让你从程序的 memory leak 和 crash 变成人 memory leak 和 crash,Java 之类有虚拟机兜底还稍微好点。Go 号称贴近底层,runtime 的 gc 编译进去就已经很蛋疼了,还要帮你兜底异常?
darluc
2018-08-29 15:51:35 +08:00
毕竟只是个 draft,这些痛点如果能改好,觉得很不错!
asuraa
2018-08-29 15:53:10 +08:00
真丑
haozes
2018-08-29 15:58:40 +08:00
这错误处理什么鬼,先写异常处理,再 check,什么直觉。。。
liuxey
2018-08-29 16:15:52 +08:00
可以,这很 Go,一眼看上去,这一堆啥啊!
写几个 handle,一个个 check, 最后可能还要 defer , 中间穿插着 return,迷宫呢这是
XIVN1987
2018-08-29 17:14:45 +08:00
看到大家都说丑我就放心了,,我的审美没啥问题(*^▽^*)
yuekcc
2018-08-29 19:48:14 +08:00
没有人吐嘈泛型的语法吗,为嘛这个另类。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/484176

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX