断断续续花了我一个多星期时间才写完,可以说是写得挺慢了,但也因此把目前泛型从里到外各种细节也都囊括了进去(如果仍有遗漏地话欢迎指出)
至于为什么要写这文章,这里摘抄下原文的序章:
2022 年 3 月 15 日,争议非常大但同时也备受期待的泛型终于伴随着 Go1.18 发布了。
可是因为 Go 对泛型的支持时间跨度太大,有非常多的以“泛型”为关键字的文章都是在介绍 Go1.18 之前的旧泛型提案或者设计。而很多设计最终在 Go1.18 中被废弃或发生了更改。并且很多介绍 Go1.18 泛型的文章(包括官方的)都过于简单,并没对 Go 的泛型做完整的介绍,也没让大家意识到这次 Go 引入泛型给语言增加了多少复杂度(当然也可能单纯是我没搜到更好的文章)
出于这些原因,我决定参考 The Go Programming Language Specification ,写一篇比较完整系统介绍 Go1.18 泛型的文章。这篇文章可能是目前介绍 Go 泛型比较全面的文章之一了
因为我实在是懒得维护个人博客(手上一堆 vps 和一个独服但没那心思去打理),所以文章选择发在博客平台了,今后有文章也会发在各种平台上(博客园似乎也挺不错得,今后会考虑做一个备选的归档库):
https://juejin.cn/post/7080938405449695268
https://segmentfault.com/a/1190000041634906
欢迎大家指点~
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.