2012年3月28日这一天标志着Go编程语言发展的一个重要里程碑。我们宣布推出Go版本1,或简称Go 1,该版本定义了一种语言和一组核心库,为创建可靠的产品,项目和出版物提供了稳定的基础。 (推荐学习:go)

Go 1 是 Go 的第一个发布,提供了二进制包。可用于 Linux、FreeBSD、Mac OS X 以及令人非常兴奋的——Windows。

对于用户来说 Go 1 驾驭起来相当稳定。编写 Go 1 程序的人可以完全确信在大多数环境下,即使再过若干年,仍然无需对程序做任何修改,它还能编译和运行。

类似的,编写关于 Go 1 书籍的人也可以确信他们的例子和解释不论对于今天还是未来的读者都是有帮助的。

向前兼容是稳定的一部分。由 Go 1 编译的代码应当(很少有特例)能够继续在这个版本的生命周期内编译和运行,如为了 issue 更新和 bug 修复而产生的 Go 版本 1.1、1.2 等等。, Go 1 兼容性文档用更多的细节对兼容性指引进行了解释。

Go 1 是 Go 当前应用的一个代表,而不是重大的重构。在计划中,我们聚焦于清理问题和矛盾,并改进可移植性。在最初我们设计并制作出 Go 的原型已经过了很久,发生了很多变化,没有发布的原因是它们不能向后兼容。

Go 1 包含了这些对语言和库提供了重大改进,但不能兼容旧程序的变化。幸运的是, go fix 工具可以自动完成许多将程序升级到 Go 1 标准的工作。

Go 1 带来了语言(例如 Unicode 字符和新的 errors 类型)和标准库(例如新的 time 包和 strconv 包的重命名)的变化。同时,包的层次被总新梳理,使得相关的项目放在一起,例如调整了网络相关的 rpc 包到 net 的子目录中。

在 Go 1 发布笔记中有完整的变化列表。这份文档对于从 Go 早期版本迁移是必不可少的指引。

我们同时重构了 Go 工具包,用新的 go 命令作为封装,用于获取、构建、安装和管理 Go 代码。go 命令消除了编写 Go 代码时对 Makefile 的需求,因为它使用 Go 程序的代码本身驱动构建。不再需要构建脚本!

最终,Go 1 的发布使得 Google App Engine SDK 也进行了新版本发布。类似的修订和稳定过程已经应用在 App Engine 包上,为开发者提供了在 App Engine 上构建可以运行许多年的程序的基石。

Go 1 是 Go 核心组和来自开源社区的贡献者共同努力的结果。我们为此向每个给予过帮助的人表示感谢。

没有什么时候是比现在更加适合变成一位 Go 程序员了。迈出第一步所需的一切都在 golang.org。

更多相关文章

  1. 使用GVM管理Go版本的方法介绍
  2. 运行golang程序提示进程无法启动
  3. 使用 Go 来构建一个 CLI 程序
  4. 如何在Linux上运行第一个go程序
  5. Go 1.15 版本的优化清单【总结】
  6. 【发布了Go-carbon1.1.1版本】完善对主流ORM的支持,新增公共方法
  7. 快看!go-carbon 1.2.2 版本发布了!新增了时间设置和时间差比较功能
  8. 分享5种文件变更时自动重载Go程序的方法
  9. 如何使用golang的pprof包对程序进行性能分析

随机推荐

  1. android xmlns:android的作用
  2. Android中应用多进程的整理总结
  3. Android和IOS系统对比
  4. Android术语
  5. TensorFlow及OpenCV在Android中的实际应
  6. Android视频播放之边缓存边播放
  7. Android的Camera架构简介
  8. Android(安卓)ContentProvider总结
  9. Android TV开发(二)处理TV硬件
  10. LTP(Linux Test Project) for Android的