再来吹一波 Golang

2021-11-09 13:12:59 +08:00
 josephok

作为 Go 语言爱好者,我来总结一波 Go 的优势:

Golang 的开发者 Robert Pike 和 Ken Thompson 都是 UNIX 小组的成员,UNIX 系统影响深远,包括 UNIX 哲学-保持简单,也深深影响着后世。他们深刻理解简洁的好处,所以在设计 Golang 时同样保持这一原则。

编译成目标机器代码,部署容易,无需额外的依赖,性能优越。

GoLang 使用 goroutine 来实现并发性,它提供了一个非常优雅的 goroutine 调度程序系统,可以很容易地生成数百万个 goroutine 。

无需解释

有许多易于使用的内置工具,比如 gofmt 自动排版 Go 代码,很大程度上杜绝了不同人写的代码排版风格不一致的问题,大大提高了团队协作的一致性。

欢迎 V 友们补充。

15656 次点击
所在节点    Go 编程语言
132 条回复
Kasumi20
2021-11-10 13:44:35 +08:00
UNIX 被黑得最惨的一次,什么时候 UNIX 主张蛇皮命名了
Leviathann
2021-11-10 13:50:48 +08:00
大道至简用英文怎么说
lancelock
2021-11-10 13:51:12 +08:00
搞技术的多务实,少务虚,成天只会喊口号你以为很高大上吗?你要吹拿点实际例子来说明哪强了,只会拾人牙慧说些经不起推敲的概念,呵呵了
ppphp
2021-11-10 14:01:37 +08:00
尽量给一些客观的评价,主观的感受很难说服人

几个直接撒泼打滚的真是搞笑,估计还自以为很高级
djFFFFF
2021-11-10 14:39:58 +08:00
所谓大道至简……

Golang 什么时候支持
```
if err {
...
}
```
而不是一定要
```
if err != nil {
...
}
```
再说大道至简吧。

日常用 Golang 做开发一年了,写偏技术向的组件的时候,context + channel + goroutine 确实很香。但是一到写业务逻辑,随便哪个语言都比 Goang 好用。
djFFFFF
2021-11-10 14:47:52 +08:00
楼上还有把 Golang 和 Python 比说差不多的,吐了,Python 这句:
ids = {item.id for item in items}
用 Golang 得写四行。
TypeError
2021-11-10 14:55:56 +08:00
@djFFFFF Python 有列表推导式,有 map reduce ,Java 有 stream ,C#有 LinQ ,就 Go 最简陋了
2i2Re2PLMaDnghL
2021-11-10 15:01:09 +08:00
请问编译速度有和 ChezScheme 对比过吗?能不能打王垠的脸(
djFFFFF
2021-11-10 15:09:16 +08:00
@TypeError 而且关键是想要用 Go 自己实现一个 stream ,还实现不了,因为没有泛型。吐了
PureWhiteWu
2021-11-10 15:13:19 +08:00
“可以很容易地生成数百万个 goroutine ”

你生成数百万个试试,调度直接炸裂。
cs419
2021-11-10 15:14:43 +08:00
蛮有意思的

想起以前的段子
php 是世界上最好的语言 然后论坛炸锅了

如今:golang 真好用
然后: 你说说 xxx 功能哪里好用了
TypeError
2021-11-10 15:14:59 +08:00
@djFFFFF 还好 Go 1.18 加泛型了
rahuahua
2021-11-10 15:19:58 +08:00
@balabalaguguji 看了你的帖子,还是好好用动态语言吧,有前途,加油~
rahuahua
2021-11-10 15:22:35 +08:00
@djFFFFF 纯好奇问哈,现代静态语言有哪个支持 if varA 然后 varA 可以不是 Bool 类型?
gavinliu0606
2021-11-10 15:25:31 +08:00
@Leviathann Less is more?
qW7bo2FbzbC0
2021-11-10 15:27:45 +08:00
@TypeError #112 一开始很多文章都把 GO 不支持泛型归于大道至简的特性
qq1398371419
2021-11-10 16:03:52 +08:00
Native 这个牛逼
ly841000
2021-11-10 16:12:51 +08:00
@rahuahua 支持自定义隐式类型转换的语言都可以
cassyfar
2021-11-10 17:21:38 +08:00
比较好奇 if err != nil 哪里难用了?所以大家希望改成什么呢? try catch ?
Mark24
2021-11-10 17:43:45 +08:00
我想缩短工作时间

我用 Ruby

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

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

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

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

© 2021 V2EX