前言

2022年1月14日,Go官方团队的Katie Hockman在Go官方博客网站上发表了一篇新文章,主要介绍了Go 1.18的2个新教程,涉及Go泛型和Go Fuzzing。

本人针对Katie Hockman的原文做了一个翻译,以飨读者。

同时在本文最后,附上了对Go泛型官方教程的中文翻译,以及针对Go泛型的设计思想和最佳实践。

原文翻译

谷歌Go团队Katie Hockman

2022.1.14

我们很快就会发布Go 1.18版本,这个版本会引入一些新的概念。我们已经发布了2个官方教程来帮助大家熟悉这些新的feature。

第一篇教程是帮助大家熟悉Go泛型。这个教程会带着大家一步一步实现一个能处理多个类型的泛型函数,并且在代码里调用泛型函数。一旦你实现了泛型函数,你就会学到关于类型约束(type constraint)的知识,并且在你的函数里用到它。同时,也建议大家查阅最近GopherCon上Robert Greisemer和Ian Lance Taylor关于泛型的技术分享,可以学到更多关于Go泛型的知识。

第二篇教程是关于Go fuzzing的介绍。这个教程展示了如何利用Fuzzing来帮助查找代码里的bug,带你一起利用Fuzzing来诊断和修复代码问题。同时,你也会在这个教程里写一些有bug的代码,利用Fuzzing来发现,修复和验证这些bug。特别感谢Beth Brown写了这篇教程。

Go 1.18 Beta 1版本上个月已经发布了,大家可以从官方下载地址进行下载。

大家也可以查看Go 1.18完整的发布清单

和以前一样,如果你发现了任何问题,请在GitHub上提issue。

希望大家能喜欢这2个教程,我们期待2022年有更多美好事情的发生。

后记

本人针对Go泛型写了2篇通俗易懂的入门文章,一个是官方英文教程的中文翻译,一个是本人整理的Go泛型设计思想和使用场景解析,建议感兴趣的可以重点参考。

近期,我也会针对Go Fuzzing写一篇技术分享文章,欢迎大家关注。

开源地址

GitHub: https://github.com/jincheng9/go-tutorial

公众号:coding进阶

References