作者陈明勇一名热爱技术、乐于分享的开发者同时也是开源爱好者。我专注于分享 Go 语言相关的技术知识同时也会深入探讨 AI 领域的前沿技术。成功的路上并不拥挤有没有兴趣结个伴Go 开源库代表作go-mongox 、go-optioner。文章持续更新如果本文能让您有所收获欢迎关注本号。前言Gopher们Go 1.26.0于2026 年 2 月 11 日正式发布啦虽然这篇介绍来得稍晚了一些但Go 1.26.0中的不少变化依然值得我们关注。Go 1.26.0相比Go 1.25.0在语言、工具链、运行时、编译器以及标准库方面都有改进。比如内置函数new得到了增强泛型类型的约束表达能力进一步提升go fix命令完成重构Green Tea GC也从实验功能变为默认启用。让我们一起来看看Go 1.26.0带来了哪些新变化吧准备好了吗准备一杯你最喜欢的咖啡或茶随着本文一探究竟吧。快速安装您可以从下载页面下载二进制和源代码发行版Go 1.26.0 下载如果你已经安装了其他的Go语言版本你也可以通过以下命令快速安装Go 1.26.0版本$ goinstallgolang.org/dl/go1.26.0latest $ go1.26.0 download Downloaded0.0%(xxx / xxxxx bytes)... Downloaded50.4%(xxx / xxxxx bytes)... Downloaded100.0%(xxx / xxxxx bytes)Unpacking /Users/chenmingyong/sdk/go1.26.0/go1.26.0.darwin-arm64.tar.gz... Success. You may now rungo1.26.0$ go1.26.0 version go version go1.26.0 darwin/arm64语言的变更Go 1.26.0版本对语言和类型系统进行了两项重大改进内置函数new的加强与泛型设计的优化。内置函数 new 的加强在Go 1.26里new内置函数不再只能接收类型现在还可以直接传入一个表达式用来指定该变量的初始值。以前我们会这样写x:int64(300)ptr:x现在可以简化为ptr:new(int64(300))泛型设计的优化Go 1.26放宽了泛型类型的一项限制在声明泛型类型时类型参数的约束可以引用这个泛型类型本身。例如下面的接口typeAdder[A Adder[A]]interface{Add(A)A}funcalgo[A Adder[A]](x,y A)A{returnx.Add(y)}在Go 1.26之前type Adder[A Adder[A]]这种写法是不允许的因为在Adder自己的类型参数列表里又引用了Adder[A]。工具链的变更Go command 命令go fix过去的go fix更多是一个历史兼容修复工具主要用于帮助旧代码适配Go早期版本中的语言或标准库变更。但随着Go 1兼容性承诺长期稳定这类历史修复规则已经逐渐过时。Go 1.26对go fix进行了全面重构使它从旧代码修复工具升级为代码现代化迁移工具。新的go fix内置了数十个代码现代化规则可以在不改变程序行为的前提下帮助项目使用更新的语言特性、更推荐的Go写法以及新的标准库API。同时新的go fix基于和go vet相同的Go analysis框架实现。这意味着过去用于代码检查和诊断的分析能力现在也可以进一步用于生成修改建议并自动应用安全修复。go mod initGo 1.26调整了go mod init生成go.mod文件时的默认Go版本。如果使用Go 1.26.0正式版执行go mod init新生成的go.mod默认会写入go1.25.0也就是比当前工具链低一个版本。如果希望新模块明确要求Go 1.26可以在go mod init后执行gogetgo1.26或者手动修改go.mod中的go版本。cmd/doccmd/doc和go tool doc已被删除。可以使用go doc替代go tool doc。Pprof通过-http参数打开pprof Web UI时现在默认展示火焰图视图。之前的图视图可以通过View - Graph菜单访问也可以通过/ui/graph访问。Runtime 的变更新的垃圾回收器 Green Tea Garbage在Go 1.25中作为实验功能提供的Green Tea垃圾回收器现在已默认启用。官方预计在大量依赖垃圾回收的真实程序中垃圾回收开销可以降低约10%到40%。更快的 CGO 调用cgo调用的基础运行时开销降低了约 30%。编译器Compiler的变更编译器现在可以在更多场景下将切片的底层存储分配到栈上从而提升性能。标准库的变更新增crypto/hpke包新增的crypto/hpke包实现了RFC 9180中定义的Hybrid Public Key Encryption也就是混合公钥加密并包含对后量子混合KEMz 的支持。errorserrors库新增AsType函数它是As函数的泛型版本。log/sloglog/slog新增了NewMultiHandler函数它会创建一个MultiHandler用于管理所给定的多个Handler。小结Go 1.26.0在语言、工具链、运行时、编译器以及标准库方面都有不少改进并带来了new内置函数增强、泛型约束放宽、go fix重构以及Green Tea GC默认启用等重要变化。此次更新不仅进一步提升了语言表达能力和工具链体验也在运行时性能方面继续优化例如降低GC开销、减少cgo调用成本并让切片底层存储在更多场景下可以分配到栈上。无论是日常开发、代码迁移还是性能优化Go 1.26.0都带来了不少实用改进。后续我将深入介绍每个重要更新的具体内容关注我更多精彩的更新分析敬请期待