Go语言的三大优势概述
极客时间编辑部
讲述:杜力大小:1016.19K时长:02:10
Go 语言作为一个新的编程语言,已经有 8 年的历史,但对比 Java 的 20 年和 C 语言的 40 年历史,还是显得十分年轻。现在很多人都喜欢这门语言,互联网公司在生产系统中使用 Go 的也在逐渐增多,主要运用在云端服务中。
近日,网易高级副总裁兼网易有道 CEO 周枫发文总结了 Go 的主要优势,包括:
1.Go 很好地继承了 C 语言灵活、简单有效的思想。
周枫写道,系统工程师应该读 Linux 内核代码。同一套代码,可以跑在小到耳机,大到 100 核的服务器的所有设备上,而且改改配置就可以一键 build 出可跑的内核出来。这样灵活的系统,归功于 C 语言简单有效的设计,让 C 颇有点“增一分则太肥,减一分则太瘦”的意思。
而 Go 继承了 C 的这些风格,虽然细节不同,比如没有指针算术,在底层系统操作方面的灵活性也有所下降等,但是在并发性、自动内存管理等很多方面,Go 变得更为强大。Go 的关键词数量甚至少于 C,它的简单性保持得很好。
2. Go 有很高的生产效率。
Go 不需要 build 文件,而是只需要执行 "go build" 即可,通过目录结构自己找到项目结构。这样“约定优于配置”的设计,大大提高了效率。另外,调用 C 代码的 cgo 的设计中,Go 可以简单到把 C 代码直接嵌到 Go 代码同一个文件里,然后 "go build" 就可以,大大提高了效率。
3. Go 精选了一些复杂事情的优秀解决办法,通过语言功能和标准库提供出来。
如并发性功能,goroutine 和 channels 是比线程和流更好的抽象。而 JSON、XML、HTTP、正则表达式这些,都有标准库的良好支持。这里的 Go 有别于 Swift,在语言特性的引入上很克制,也很“精选”。对比 Go,Swift 就有点像个“学究”型的语言,引入了大批的语言特性,虽然每个都很正确,但是合起来就变得繁琐。
随着越来越多的开发人员使用 Go,他们会发现,能够将整个语言保持在他们的头脑中,会形成一种微妙的生产力形式。而这一特点,正是其他越来越庞大、越来越复杂的语言所缺乏的。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(4)
- 最新
- 精选
- haotrr置顶“但对比 Java 的 40 年和 C 语言的 20 年历史”应为“但对比 Java 的 20 年和 C 语言的 40 年历史”吧。
编辑回复: 是的是的
- RussellSN应该是40年的C语音和20年的JAVA语言。文稿有误,请更正。
- mysaltC语言和Java语言的历史时间反了吧
- GrootJava 40年,C语言 20年???
收起评论