查看原文
其他

Go开源11周年 ,“泛型还没搞定”?

局长 OSC开源社区 2021-09-10

喜欢就关注我们吧!

2009年11月10日,Go 作为开源项目正式宣布推出。2020年11月10日,Go 已开源 11 周年,其官方博客也更新了一篇纪念 11 周年的文章。

简单回顾 Go 的历史:

  • 2007年9月 Rob Pike, Robert Griesemer 和 Ken Thompson 开始设计 Go

  • 2008年3月 Go 的首个规范产生

  • 2009年11月10日,Go 正式宣布推出,并成为开源项目

  • 2012年3月,首个正式版本 Go 1 发布

  • 2013年5月,Go 1.1 发布,并正式确定发布周期,计划每半年发布一个二级版本

  • ……

直到今天,Go 用了 7 年的时间从 1.1 迭代至 1.15 ,然而 Go 2 依旧还没发布,不过这与 Go 的发布计划有关,根据 Go 团队的说法,Go 2 并非一个单独的重大更新版本,而是通过“增量(incremental)更新”的方式从 Go 1.x 逐渐抵达 Go 2.0,所以期间的版本都能看到 Go 2 提案的实现。

Go 团队也回顾了今年以来关于 Go 的重要时间节点:

  • 2月,Go 1.14 为 Go modules 交付了第一个正式的“生产环境就绪”实现,改进性能(包括提供更快的 defer 和非协同的 goroutine 抢占),以减少调度和垃圾回收延迟

  • 3月,推出新的协议缓冲区 API,google.golang.org/protobuf,对协议缓冲区反射和自定义消息的支持有了很大的改进

  • 6月,VS Code 的 Go 语言插件迁移至由 Go 团队维护

  • 6月下旬,Go 泛型草案更新,并宣布了一个原型工具和体验泛型的 playground

  • 7月,发布并讨论三个新的设计草案,主要是用于文件选择新的//go:build、文件系统接口和构建时文件嵌入

  • 8月,Go 1.15 优化性能和修复 bug。最重要的是开始重写链接器,使其运行速度提高 20%,并在大型构建时平均减少 30% 的内存

对于最受关注的 Go Modules 和泛型,Go 团队表示明年将继续致力于开发对 Go Modules 的支持,并将其很好地集成到整个 Go 生态中。最近一项调查的初步结果显示,目前 96% 的用户已采用 Go Modules(高于一年前的 90%)。

至于泛型,团队正在努力打磨可将其用于生产环境的细节,这也是他们2021年的工作重点之一,并计划在 Go 1.18 beta 为开发者提供试用的机会。

▼ 往期精彩回顾 ▼

GitHub 源代码泄露?

Node.js如何应对来自Deno的挑战?

华为要建“去美化”芯片厂?

程序员奶爸用树莓派自制 AI 婴儿监视器

Visual Studio Code 1.51 发布!




觉得不错,请点个在看

视频 小程序 ,轻点两下取消赞 在看 ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存