Go 1.17 发布

未匹配的标注

本文为官方 Go Blog 的中文翻译,详见 翻译说明

Matt Pearring and Alex Rakoczy
2021 年 8 月 16 日

今天,Go 团队很高兴地发布了 Go 1.17,你可以通过访问下载页面获得该版本。

这个版本给编译器带来了额外的改进,即传递函数参数和结果的新途径。这一改变使 Go 程序的性能提高了约 5%,并使 amd64 平台的二进制大小减少了约 2%。对更多平台的支持将在未来的版本中出现。

Go 1.17 还增加了对 Windows 上的 64 位 ARM 架构的支持,让地鼠在更多设备上原生运行 Go。

我们还在这个版本中引入了精简模块图。在其 go.mod 文件中指定 go 1.17 或更高版本的模块,其模块图只包括其他 Go 1.17 模块的直接依赖关系,而不是其全部的横向依赖关系。这应该有助于避免下载或阅读 go.mod 文件,以获取不相关的依赖关系,从而在日常开发中节省时间。

Go 1.17 带有三个小的语言变化。前两个是 unsafe 包中的新函数,使程序更容易符合 unsafe.Pointer 规则。unsafe.Add 允许更安全的指针运算,而 unsafe.Slice 允许更安全的指针与片断的转换。第三个变化是对语言类型转换规则的扩展,允许从切片到数组指针的转换,只要切片在运行时至少和数组一样大。

最后还有一些其他的改进和错误修复,包括对 crypto/x509 的验证改进,以及对 URL 查询解析的改动。有关上述改进的完整变化列表和更多信息,请参见完整发布说明

感谢所有通过编写代码、提交错误、分享反馈以及测试测试版和候选版而为这个版本做出贡献的人。你的努力有助于确保 Go 1.17 尽可能的稳定。一如既往,如果你发现任何问题,请提交问题

我们希望你喜欢这个新版本!

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/go-blog/go-117-...

译文地址:https://learnku.com/docs/go-blog/go-117-...

上一篇 下一篇
Summer
贡献者:2
讨论数量: 0
发起讨论 只看当前版本


暂无话题~