嗨,我是猫头虎,今天带大家一起探索Go语言的新篇章——Go 1.4版本的发布。这个版本不仅带来了一系列的改进和新特性,还为Go语言的未来发展打下了坚实的基础。让我们一探究竟吧!
在经过半年的等待后,Go语言迎来了它的第五个主要稳定版本——Go 1.4。此版本不仅包含了小幅的语言更改,还增加了对更多操作系统和处理器架构的支持,以及对工具链和库的改进。与往常一样,Go 1.4保持了向后兼容的承诺,几乎所有程序在迁移到1.4版本后都能够继续编译和运行。
Go 1.4版本最值得注意的新功能是对Android的官方支持。通过核心的支持和golang.org/x/mobile库,现在可以仅使用Go代码编写简单的Android应用。虽然这些支持库仍处于早期开发阶段,但我们欢迎社区积极参与。
Go 1.4对for-range循环的语法进行了微调。现在可以写“for range s {”来循环遍历s中的每个项目,而不必指定值、循环索引或映射键。详情请参阅发布说明。
Go命令新增了一个子命令go generate
,用于在编译前自动运行工具生成源代码。例如,它可以用来自动生成类型常量的String方法,使用新的stringer工具。更多信息见设计文档。
大多数程序在1.4版本中的运行速度与1.3版本相当或略快;一些可能会稍慢。由于许多变更,很难精确预测具体的性能表现。更多讨论见发布说明。
当然,还有许多其他的改进和bug修复。
一些子仓库已经迁移到了新的位置。例如,go.tools包现在从“golang.org/x/tools”导入。详情见公告帖子。
这个版本的发布也与项目从Mercurial迁移到Git(源代码控制)、Rietveld迁移到Gerrit(代码审查)以及从Google Code迁移到GitHub(问题跟踪和wiki)同时进行。迁移影响了核心Go仓库及其子仓库。Git仓库位于go.googlesource.com,问题跟踪和wiki位于golang/go GitHub仓库。
对于App Engine用户,Go 1.4现在可用于测试。详情见[公告](https://groups.google.com/d/msg/google-appengine-go/ndtQokV3oFo/25wV1W9JtywJ
)。
在Go团队的所有成员名义上,希望大家享受Go 1.4,并度过一个快乐的假期季节。本文已被猫头虎的Go生态洞察专栏收录,详情点击这里。