当前位置: 首页 > 科技新闻 >

为什么说Go是最适合云原生时代的编程语言?

时间:2020-12-10 15:55来源:网络整理 浏览:
Java是以VM为基础,而云原生讲究的是Native。 Java历史悠久,拥有大量用户和完善的生态,这同时是Java的优势,也是Java编程

Java是以VM为基础,而云原生讲究的是Native。

Java历史悠久,拥有大量用户和完善的生态,这同时是Java的优势,也是Java编程语言的一个沉重包袱。

为什么说Go语言更适合云原生时代呢?

特性1:

语法简单,容易上手。云原生社区是一个对开源和贡献者非常看重的生态,这就使得很少需要纠结于语法细节的 Go 语言迅速成为了这个社区的“不二之选”。否则的话,云原生 CNCF 社区里大量项目都得忙着讨论这个指针那个引用,什么 Kubernetes CRD 之类的创新设计估计都得凉。

特性2:

http://golang.org 库非常丰富。咱们现代软件开发行业,讲究的就是“面向 library” 编程,谁没事儿都不会手撸一个 HTTP 框架或者并发库。开箱即用的库越多,咱研发效率就越高。在这一点上,Go 语言不仅有先天优势,而且雪球越滚越大,已然是云原生一霸了。

特性3:

部署简单。Go 语言项目开发完了,一个静态文件就可以运行了,特别适合直接扔在 Docker 里跑。大家可以想象一下如果 Kubernetes 是 Python 或者 Ruby 开发的,这玩意儿线上部署得多头疼。

特性4:

性能还不错,优化也相对简单。Go 语言不能说是性能之王,但它很好的平衡了性能和程序员的心智负担。对于 Docker、Kubernetes 这几个项目的定位来说,这个平衡点恰到好处。

所以到了 2020 年,Go 语言已经成为了”云原生“这个圈子最重要的一枚“入场券”:Linux 内核不懂,咱还有机会慢慢学;Go 语言不会?您可就真要寸步难行了。

而俗话说得好:要想语言学得好,动手练习不能少!咱们云原生社区最大的一个好处,就是 Go 语言开源项目多,优质的 Go 语言开源项目更多!从最底层的 containerd,到编排层的 Kubernetes,再到如今正红的发紫的 Istio,随便拿出一个来,那就足够咱们好好钻研一阵子了。

责任编辑:

推荐内容