作为 Go 语言爱好者,我来总结一波 Go 的优势:
Golang 的开发者 Robert Pike 和 Ken Thompson 都是 UNIX 小组的成员,UNIX 系统影响深远,包括 UNIX 哲学-保持简单,也深深影响着后世。他们深刻理解简洁的好处,所以在设计 Golang 时同样保持这一原则。
编译成目标机器代码,部署容易,无需额外的依赖,性能优越。
GoLang 使用 goroutine 来实现并发性,它提供了一个非常优雅的 goroutine 调度程序系统,可以很容易地生成数百万个 goroutine 。
无需解释
有许多易于使用的内置工具,比如 gofmt 自动排版 Go 代码,很大程度上杜绝了不同人写的代码排版风格不一致的问题,大大提高了团队协作的一致性。
欢迎 V 友们补充。
101
Kasumi20 2021-11-10 13:44:35 +08:00
UNIX 被黑得最惨的一次,什么时候 UNIX 主张蛇皮命名了
|
102
Leviathann 2021-11-10 13:50:48 +08:00
大道至简用英文怎么说
|
103
lancelock 2021-11-10 13:51:12 +08:00
搞技术的多务实,少务虚,成天只会喊口号你以为很高大上吗?你要吹拿点实际例子来说明哪强了,只会拾人牙慧说些经不起推敲的概念,呵呵了
|
104
ppphp 2021-11-10 14:01:37 +08:00
尽量给一些客观的评价,主观的感受很难说服人
几个直接撒泼打滚的真是搞笑,估计还自以为很高级 |
105
djFFFFF 2021-11-10 14:39:58 +08:00 1
所谓大道至简……
Golang 什么时候支持 ``` if err { ... } ``` 而不是一定要 ``` if err != nil { ... } ``` 再说大道至简吧。 日常用 Golang 做开发一年了,写偏技术向的组件的时候,context + channel + goroutine 确实很香。但是一到写业务逻辑,随便哪个语言都比 Goang 好用。 |
106
djFFFFF 2021-11-10 14:47:52 +08:00
|
107
TypeError 2021-11-10 14:55:56 +08:00
@djFFFFF Python 有列表推导式,有 map reduce ,Java 有 stream ,C#有 LinQ ,就 Go 最简陋了
|
108
2i2Re2PLMaDnghL 2021-11-10 15:01:09 +08:00
请问编译速度有和 ChezScheme 对比过吗?能不能打王垠的脸(
|
110
PureWhiteWu 2021-11-10 15:13:19 +08:00
“可以很容易地生成数百万个 goroutine ”
你生成数百万个试试,调度直接炸裂。 |
111
cs419 2021-11-10 15:14:43 +08:00
蛮有意思的
想起以前的段子 php 是世界上最好的语言 然后论坛炸锅了 如今:golang 真好用 然后: 你说说 xxx 功能哪里好用了 |
113
rahuahua 2021-11-10 15:19:58 +08:00
@balabalaguguji 看了你的帖子,还是好好用动态语言吧,有前途,加油~
|
115
gavinliu0606 2021-11-10 15:25:31 +08:00
@Leviathann Less is more?
|
116
qW7bo2FbzbC0 2021-11-10 15:27:45 +08:00
@TypeError #112 一开始很多文章都把 GO 不支持泛型归于大道至简的特性
|
117
qq1398371419 2021-11-10 16:03:52 +08:00
Native 这个牛逼
|
119
cassyfar 2021-11-10 17:21:38 +08:00
比较好奇 if err != nil 哪里难用了?所以大家希望改成什么呢? try catch ?
|
120
Mark24 2021-11-10 17:43:45 +08:00
我想缩短工作时间
我用 Ruby |
121
rahuahua 2021-11-10 18:01:54 +08:00
@ly841000 这种隐式转换看个人喜好吧,但是这玩意跟大道至简没一毛钱关系,另外仅供参考:新生代的静态类型语言 Go Rust Swift kotlin 都禁止这种
|
122
zjsxwc 2021-11-10 18:06:03 +08:00 via Android
在 web 领域最快的服务端框架中并没有 go 啊
|
123
zjsxwc 2021-11-10 18:06:20 +08:00 via Android
|
124
rahuahua 2021-11-10 18:08:49 +08:00
@cassyfar 优化成 rust/swift 那种语法糖可以少写代码,写系统软件 if err != nil 感觉问题不大,写业务是有些繁琐,搬砖工作量实在是太大了
|
125
jackmrzhou 2021-11-10 18:16:32 +08:00 via iPhone
还有 1.18 加的 type parameters ,看过那个 proposal 就知道类的方法不能加 type parameter. 这就是之前大道至简埋下的坑,以及现在还坚持大道至简所以不加,具体可以去看官方的解释说为啥类方法加个 type parameters 有多麻烦。所以用 1.18 写 map reduce 没办法链式调用,多调用几次 map reduce 那个嵌套惨不忍睹。哦对,golang 大道至简但是拒绝 lambda ,所以看起来就更头疼了。
所以,扎不多德勒。 |
126
Leviathann 2021-11-10 18:43:47 +08:00
@cassyfar go 在用积类型处理异常(返回两个值也就是相当于一个 tuple ),而其他现代语言一般都用和类型( Result 、Either )
|
129
solobat 2021-11-11 21:54:48 +08:00 1
go 太丑了,下不去手
|
130
whyso 2021-11-16 18:13:45 +08:00
看完第一感觉高级黑
|
131
EricGoodMan 2021-11-18 16:16:04 +08:00
@gowk 你不说我还以为 v2 不需要🪜
|
132
Mark24 2023-10-20 13:48:27 +08:00
这语言是山东人发明的么?
主打一个倒装句,全是反的。 逆反心理。语言的观感太差。丑。 大道至 nil golang 能广泛使用,说明码农时间真不值钱 |