Go 1.18 正式发布!

业界 作者:SegmentFault 2022-03-17 15:13:34

技术编辑:61丨发自 思否编辑部

公众号:SegmentFault




美国时间 2022 年 3 月 15 日,Go 团队官宣 Go 1.18 正式发布!


Go 团队表示:Go 1.18 是一个包含大量新功能的版本,包括对语言本身做了有史以来最大的改变(泛型)、工具链的实现、运行时和库的更改,还改善了性能。毫不夸张地说,Go 1.18 的部分设计十多年前,在第一次发布 Go 时就开始了构思。



下面让我们来快速预览一下这些最新特性:

 

泛型(Generics


Go 1.18 引入了对使用参数化类型的泛型代码的新支持。支持泛型是 Go 最常被要求添加的功能,后续版本将继续为一些更复杂的泛型用例提供额外支持。


Go 鼓励用户使用泛型教程来了解这一新功能,并探索使用泛型来优化和简化用户的代码的最佳方法。


泛型教程链接:https://go.dev/doc/tutorial/generics


在 Go 1.18 版本发布说明中有更多使用泛型的细节。

 

模糊测试(Fuzzing)


随着 Go 1.18 版本的发布,Go 成为第一个将模糊测试完全集成到其标准工具链中的主要语言。与泛型一样,模糊测试已经设计了很长时间。


请结合 Fuzzing 教程开始使用此新功能。


模糊测试教程链接:https://go.dev/doc/tutorial/fuzz

 

工作区(Workspaces)


如今 Go 模块几乎已被普遍采用,在 Go 年度调查中,用户表达了非常高的满意度。在2021 年用户调查中,用户反馈 Go 模块最常见的挑战是跨多个模块工作。


在 Go 1.18 中,通过使用新的 Go 工作区模式解决了这个问题,这使得在多个模块中工作变得简单。


工作区教程链接: https://go.dev/doc/tutorial/workspaces

 

20% 的性能提升


苹果 M1、ARM64 和 PowerPC64 用户肯定会高兴!由于 Go 1.17 的寄存器 ABI 调用约定扩展到这些架构,Go 1.18 的 CPU 性能提升幅度高达 20%。


为了强调这个版本的性能提升幅度有多大,Go 甚至把 20% 的性能提升作为第四个最重要的标题!


更多有关 Go 1.18 的详细内容说明,请查看:https://go.dev/doc/go1.18


下载链接:https://go.dev/dl/




点击左下角阅读原文,到 SegmentFault 思否社区 和文章作者展开更多互动和交流,扫描下方”二维码“或在“公众号后台回复“ 入群 ”即可加入我们的技术交流群,收获更多的技术文章~

- END -


关注公众号:拾黑(shiheibook)了解更多

赞助链接:

关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接