Go语言入门| 豆包MarsCode AI刷

152 阅读4分钟

Go语言发展历史

76a1cb584233f75557d7e018df865047.png

起源

Go 语言起源 2007 年,并于 2009 年正式对外发布。它从 2009 年 9 月 21 日开始作为谷歌公司 20% 兼职项目,即相关员工利用 20% 的空余时间来参与 Go 语言的研发工作。该项目的三位领导者均是著名的 IT 工程师:

  • Robert Griesemer,参与开发 Java HotSpot 虚拟机;
  • Rob Pike,Go 语言项目总负责人,贝尔实验室 Unix 团队成员,参与的项目包括 Plan 9,Inferno 操作系统和 Limbo 编程语言;
  • Ken Thompson,贝尔实验室 Unix 团队成员,C 语言、Unix 和 Plan 9 的创始人之一,与 Rob Pike 共同开发了 UTF-8 字符集规范。

自 2008 年 1 月起,Ken Thompson 就开始研发一款以 C 语言为目标结果的编译器来拓展 Go 语言的设计思想。

发展历程

在 2008 年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器和运行实现上。Ian Lance Taylor 也加入到了开发团队中,并于 2008 年 5 月创建了一个 gcc 前端。

Russ Cox 加入开发团队后着手语言和类库方面的开发,也就是 Go 语言的标准包。在 2009 年 10 月 30 日,Rob Pike 以 Google Techtalk 的形式第一次向人们宣告了 Go 语言的存在。

直到 2009 年 11 月 10 日,开发团队将 Go 语言项目以 BSD-style 授权(完全开源)正式公布了 Linux 和 Mac OS X 平台上的版本。Hector Chu 于同年 11 月 22 日公布了 Windows 版本。

作为一个开源项目,Go 语言借助开源社区的有生力量达到快速地发展,并吸引更多的开发者来使用并改善它。自该开源项目发布以来,超过 200 名非谷歌员工的贡献者对 Go 语言核心部分提交了超过 1000 个修改建议。在过去的 18 个月里,又有 150 开发者贡献了新的核心代码。这俨然形成了世界上最大的开源团队,并使该项目跻身 Ohloh 前 2% 的行列。大约在 2011 年 4 月 10 日,谷歌开始抽调员工进入全职开发 Go 语言项目。

荣誉

在 Go 语言在 2010 年 1 月 8 日被 Tiobe(闻名于它的编程语言流行程度排名)宣布为 “2009 年年度语言” 后,引起各界很大的反响。目前 Go 语言在这项排名中的最高记录是在 2017 年 1 月创下的第 13 名,流行程度 2.325%。

时间轴

  • 2007 年 9 月 21 日:雏形设计
  • 2009 年 11 月 10 日:首次公开发布
  • 2010 年 1 月 8 日:当选 2009 年年度语言
  • 2010 年 5 月:谷歌投入使用
  • 2011 年 5 月 5 日:Google App Engine 支持 Go 语言

官方网站与资源

  • Go 语言的官方网站是 golang.org,这个站点采用 Python 作为后端,并且使用 Go 语言自带的工具 godoc 运行在 Google App Engine 上来作为 Web 服务器提供文本内容。
  • 更多的信息详见 github.com/golang/go,Go 项目 Bug 追踪和功能预期详见 github.com/golang/go/i…

社区与交流

  • 谷歌邮件列表 golang-nuts 非常活跃,每天的讨论和问题解答数以百计。
  • 关于 Go 语言在 Google App Engine 的应用,这里有一个单独的邮件列表 google-appengine-go,不过 2 个邮件列表的讨论内容并不是分得很清楚,都会涉及到相关的话题。
  • go-lang.cat-v.org 是 Go 语言开发社区的资源站,irc.freenode.net 的 #go-nuts 是官方的 Go IRC 频道。
  • @golang 是 Go 语言在 Twitter 的官方帐号,大家一般使用 #golang 作为话题标签。
  • 这里还有一个在 Linked-in 的小组:www.linkedin.com/groups?gid=…
  • Go 编程语言的维基百科:en.wikipedia.org/wiki/Go_(pr…
  • Go 语言相关资源的搜索引擎页面:gowalker.org

Go Tour

  • Go 语言还有一个运行在 Google App Engine 上的 Go Tour,你也可以通过执行命令 go install go-tour.googlecode.com/hg/gotour 安装到你的本地机器上。
  • 对于中文读者,可以访问该指南的 中文版本,或通过命令 go install https://bitbucket.org/mikespook/go-tour-zh/gotour 进行安装。