Go是Google创建的免费和开源语言,于2009年11月10日首次出现。现在已经七岁了。
Go最初是由Robert Griesemer,Rob Pike和Ken Thompson发起的Google内部项目。首次发布时,一种实验语言是:
将使用Python之类的动态语言的开发速度与C或C ++等已编译语言的性能和安全性相结合
它引起了极大的轰动,并在两个月内成为一年中的TIOBE语言。
从其TIOBE指数可以看出,它的受欢迎程度最近有所回升,自去年11月以来已从第48位上升到第13位,因此目前处于最高位置,最低点是2015年5月的122。
Go的前一个高点是在2013年11月,当时它已经4岁了,已经获得了一定程度的成熟度,同时也是开源跨平台开发环境LiteIDE。
那么Go值得它当下流行吗?
尽管最初怀疑我们是否需要另一种语言,但I程序员的Mike James很快就转变了信仰,而以下几点摘自他的三部分系列文章:《程序员与LiteIDE一起使用的指南》:
Go是一种易于使用但功能强大的语言。您可以将其称为C的现代版本。它具有干净简单的结构,据说是静态类型的。但它的行为类似于动态类型的语言。它也可以编译为本机代码,但与解释语言一样易于使用。
与大多数程序员熟悉的基于类的面向对象的语言相比,Go对对象采取的方法非常不同。您没有定义一个类,然后使用它来实例化一个对象,并且没有类型层次结构。也没有继承,没有函数重载和...如果这一切听起来好像Go会变成一种原始的低级语言,那就再想想。最好将其方法描述为低级,是的,但也相当复杂。
Go以其易于使用的并发方法而闻名-它是该语言的一部分...它的goroutine和通道协同工作以协调并发和并行性。
自从它的第4个生日以来,Go在每个后续发行版中都不断进行改进。2014年6月发布的1.3版具有更好的性能,改进的工具以及对在新环境中运行Go的支持。2014年12月,在1.4版中添加了对Android的支持。对于2015年唯一的Go 1.5版本,完全使用Go编写了编译器和运行时,并引入了改进的垃圾收集器,两者均有助于提高编译速度,这首先是Go的主要原理。在2010年的采访中,Rob Pike解释说:
“起点是漫长的编译时间-对于我们在Google上的某些大型软件,即使使用我们的大型分布式编译集群,构建时间也可能过长。C和C ++中的依赖管理(或缺少依赖管理)会导致过多的代码通过编译器。
您可能会说Go是在等待大型编译时构思的。”
Goon the Go博客成立七周年纪念日是它的最新周年纪念,并报告了过去一年发生的事情:
自我们开源Go的初步草图以来,今天已经七年了。在开放源代码社区的帮助下,包括超过一千个Go语言源存储库的单独贡献者,Go已经发展成为一种在世界范围内使用的语言。
过去一年中,Go面向用户的最重要变化是增加了对HTTP / 2 inGo 1.6的内置支持,以及将上下文包集成到Go 1.7的标准库中。但是我们一直在进行许多不太明显的改进。Go 1.7将x86-64编译器更改为使用新的基于SSA的后端,从而使大多数Go程序的性能提高了10–20%。对于计划于明年2月发布的Go 1.8,我们还更改了其他体系结构的编译器以也使用新的后端。我们还为32位x86上的Android,64位MIPS上的Linux和IBM z Systems上的Linux添加了新端口。我们还开发了新的垃圾收集技术,可将典型的“环游世界”暂停时间缩短到100微秒以下。(与Go 1.5的10毫秒或更短时间的重大新闻进行对比。)
那么,您是否应该考虑将Go用于下一个项目?
如果大规模的速度对您来说很重要。在Go上构建的项目包括Docker,因此您会在公司中相处融洽。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。