迈向Go 2的下一步

栏目: Go · 发布时间: 5年前

Go 2 又有进展了,近日 Go 团队在博客公布了关于 Go 2 下一步的计划。 根据此前的报道,Go 2 并非一个单独的重大更新版本,而是通过“增量(incremental)更新”的方式以逐渐抵达 "Go 2.0",所以期间的版本都能看到 Go 2 的影子。

迈向Go 2的下一步

当前状态

Go 团队表示正准备推出 Go 1.13,有望在今年 8 月初发布。 经历长时间的开发后,这会是首个包括对语言特性进行具体更改的重要版本,而不仅仅是针对规范的小调整。

为了实现这些变化,Go 团队从一小系列可行的提案开始,这些提案很大一部分来自 GitHub 中被标记为提案的 issue 列表。 此文讲述过 关于提案新的评估流程,团队希望所选择的提案对语言的改动较小,而且几乎没有争议,这样是为了保证经历完全程后,最终能实现这些提案。 另外,提案引起的变更必须向后兼容,以实现最小的破坏性。

总而言之,初始阶段的变更不是为了解决重大问题,更多的是希望 Go 社区重新活跃起来,并从新的流程中汲取经验。

对于原始的提案列表 ——  通用 Unicode 标识符、二进制整数字面量(binary integer literals)、用于数字字面量的分隔符和 signed integer shift counts ,官方表示已采纳部分并对它们进行了修改。 如关于二进制字面量的提案,团队已对其进行了显著的扩展,并对 Go 的数字字面量语法进行全面和现代化的改进。

Go 团队还将错误处理(error inspection) 添加到了 Go 2 的草案设计提案中,该提案已被部分接受。

在 Go 1.13 中,我们将能看到这些变化,不过官方表示现在关注的重点是 Go 1.14,并确定接下来要解决的问题。

关于 Go 1.14 的提案

Go 团队表示当前对 Go 语言的目标依旧和 2007 年的一致: 成为一门使软件开发更具伸缩性的语言。 在这条路上,改进 Go 伸缩性的三大难题包括: 包/版本管理、错误处理以及泛型

不过随着对 Go module 的支持日益强大,团队正在努力解决对包/版本管理支持的问题。 所以现在主要剩下错误处理和泛型的问题亟需解决。

团队一直在研究和它们相关的问题,并在去年的 GopherCon 大会上提出了设计草案。 自那时起,团队就一直在迭代和改进这些设计。 对于错误处理,他们发布了一个详细的、经过重大修改和简化的草案。 对于泛型,团队表示已取得进展,今年还在 GopherCon 上进行了一场名为 “Generics in Go” 的演讲(Ian Lance Taylor 作为演讲者),不过尚未达到具体的提案阶段。

团队希望给 Go 语言带去一些小的改进,所以为 Go 1.14 选择了以下这些提案:

  • #32437 添加内置的 Go 错误检查函数,"try"

  • #6977 允许嵌入重叠的接口(overlapping interfaces)

  • #32479 在 go vet 中对 string(int) 转换进行诊断

  • #32466 采用加密准则

下一步

团队正在积极征求对这些提案的反馈意见。 他们希望看到用户在基于事实的情况下,解释为什么提案可能在实践中不能很好地运作,或者指出团队在设计中欠缺考虑的问题等。 对于仅包含个人意见的评论,团队表示可以承认它们,但无法以任何建设性的方式来解决这些问题。

最后,如果没有充分的理由阻止这些提案进入试验阶段,团队将会在 Go 1.14 的开发周期(2019年8月初开始)中实现它们,以便在实践中对其进行评估。 根据提案评估流程,Go 1.14 预计将在开发周期结束时(2019年11月初)完成。

开源中国征稿啦!

开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 400 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。

现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。 投稿详情及联系方式请参见: 我要投稿

迈向Go 2的下一步


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

结网

结网

王坚 / 人民邮电出版社 / 2010-12-10 / 59.00元

本书以如何创建、发布、推广互联网产品为主线,介绍了互联网产品经理的工作内容以及应对每一部分工作所需的方法和工具。为用户创造价值是产品经理的第一要务,产品经理的工作是围绕用户及具体任务展开的,本书丰富的案例和透彻的分析道出了从发现用户到最终满足用户这一过程背后的玄机。 本书面向现在正在从事及未来将要从事互联网相关工作的创业者和产品经理,也可以作为互联网产品策划人员或相关专业学生的参考书。新版完......一起来看看 《结网》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具