<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Govet on Tony Bai</title><link>https://tonybai.com/tags/govet/</link><description>Recent content in Govet on Tony Bai</description><generator>Hugo</generator><language>zh-cn</language><copyright>2004-2026 Tony Bai. 版权所有.</copyright><lastBuildDate>Fri, 26 Jun 2026 18:06:21 +0800</lastBuildDate><atom:link href="https://tonybai.com/tags/govet/index.xml" rel="self" type="application/rss+xml"/><item><title>偿还十年技术债：深度拆解 Go 1.27 的 GODEBUG 强力清理计划</title><link>https://tonybai.com/2026/06/26/policy-for-removing-godebug-flags/</link><pubDate>Fri, 26 Jun 2026 18:06:21 +0800</pubDate><guid>https://tonybai.com/2026/06/26/policy-for-removing-godebug-flags/</guid><description>&lt;p&gt;&lt;img alt="题图" loading="lazy" src="https://tonybai.com/images/wp-content/uploads/2026/policy-for-removing-godebug-flags-1.png"&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://tonybai.com/2026/06/26/policy-for-removing-godebug-flags"&gt;本文永久链接&lt;/a&gt; – &lt;a href="https://tonybai.com/2026/06/26/policy-for-removing-godebug-flags"&gt;https://tonybai.com/2026/06/26/policy-for-removing-godebug-flags&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;大家好，我是Tony Bai。&lt;/p&gt;
&lt;p&gt;2012 年 3 月，Go 1.0 的发布确立了那条被奉为开源界圣经的规则——&lt;strong&gt;Go 1 兼容性保证（Go 1 compatibility guarantee）&lt;/strong&gt;。它承诺的大意：任何符合 Go 1 规范的程序，在未来的 Go 1.x 版本中，无需修改即可直接编译并正确运行。&lt;/p&gt;</description></item><item><title>Go 的 AI 时代宣言：我们如何用“老”原则，解决“新”问题？</title><link>https://tonybai.com/2025/12/25/go-next-frontier-gophercon-2025/</link><pubDate>Thu, 25 Dec 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/12/25/go-next-frontier-gophercon-2025/</guid><description>本文永久链接 – https://tonybai.com/2025/12/25/go-next-frontier-gophercon-2025 大家好，我是Tony Bai。 “AI 正在重塑软件工程，但它并没有改变软件工程的本质。” 在 GopherCon 2025 上，Go 语言产品负责人 Cameron Balahan 发表了一场题为《Go 的下一个前沿领域》的主题演讲，重点关注了AI 时代...</description></item><item><title>AI 还在写“老式 Go”？Alan Donovan 详解 Go 代码的现代化</title><link>https://tonybai.com/2025/12/22/alan-donovan-go-code-modernization/</link><pubDate>Mon, 22 Dec 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/12/22/alan-donovan-go-code-modernization/</guid><description>本文永久链接 – https://tonybai.com/2025/12/22/alan-donovan-go-code-modernization 大家好，我是Tony Bai。 “Go 承诺了兼容性，但这并不意味着我们应该永远停留在过去。” 在 GopherCon 2025 上，Go 团队核心成员、静态分析工具专家 Alan Donovan 带来了一场题为《Analysis and Trans...</description></item><item><title>Go 的“最小惊讶原则”破功了吗？—— 一个vet 新提案引发的思考</title><link>https://tonybai.com/2025/12/09/vet-add-check-for-using-verb-q/</link><pubDate>Tue, 09 Dec 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/12/09/vet-add-check-for-using-verb-q/</guid><description>本文永久链接 – https://tonybai.com/2025/12/09/vet-add-check-for-using-verb-q 大家好，我是Tony Bai。 Go 语言的设计哲学，一向以“简单、明确、无魔法”著称，其目标是让代码的行为**尽可能符合开发者的直觉**，即遵循所谓的**“最小惊讶原则” (Principle of Least Astonishment)**。然而，最近一...</description></item><item><title>Go 的 16 年：一门为持久而生的编程语言</title><link>https://tonybai.com/2025/11/12/16-years-of-go-a-programming-language-built-to-last/</link><pubDate>Wed, 12 Nov 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/11/12/16-years-of-go-a-programming-language-built-to-last/</guid><description>本文永久链接 – https://tonybai.com/2025/11/12/16-years-of-go-a-programming-language-built-to-last 大家好，我是Tony Bai。 每年的十一月，对于全球的 Gopher 而言，都是一个值得纪念的特殊时刻。今年，我们迎来了 Go 语言公开发布的第 16 个年头。 在众多的庆祝文章中，来自 Go 社区的知名组织 Ar...</description></item><item><title>Go 考古：错误处理的“语法糖”之战与最终的“投降”</title><link>https://tonybai.com/2025/10/28/go-archaeology-error-handling/</link><pubDate>Tue, 28 Oct 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/10/28/go-archaeology-error-handling/</guid><description>本文永久链接 – https://tonybai.com/2025/10/28/go-archaeology-error-handling 大家好，我是Tony Bai。 if err != nil，这可能是 Go 语言中最具辨识度，也最富争议性的代码片段。它如同一块磐石，奠定了 Go 错误处理哲学的基石，但也因其“繁琐”而常年位居 Go 开发者年度调查“最不满意特性”榜首。 许多新入门的 Gop...</description></item><item><title>Go 1.25中值得关注的几个变化</title><link>https://tonybai.com/2025/08/15/some-changes-in-go-1-25/</link><pubDate>Fri, 15 Aug 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/08/15/some-changes-in-go-1-25/</guid><description>本文永久链接 – https://tonybai.com/2025/08/15/some-changes-in-go-1-25 大家好，我是Tony Bai。 北京时间2025年8月13日，Go 团队如期发布了 Go 语言的最新大版本——Go 1.25。按照惯例，每次 Go 大版本发布时，我都会撰写一篇“Go 1.x 中值得关注的几个变化”的文章。自 2014 年的 Go 1.4 版本起，这一系列...</description></item><item><title>Go fix 命令将迎“重生”：移除过时功能，为集成现代化代码分析器铺平道路</title><link>https://tonybai.com/2025/07/28/go-fix-reborn/</link><pubDate>Mon, 28 Jul 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/07/28/go-fix-reborn/</guid><description>本文永久链接 – https://tonybai.com/2025/07/28/go-fix-reborn 大家好，我是Tony Bai。 Go 语言工具链中的元老级命令 go fix 即将迎来其生命周期中最重要的转折点。一项编号为 **#73605** 的新提案建议移除 go fix 当前的全部功能，使其暂时成为一个空命令。这一看似“激进”的举动，实则是为一个更宏大的目标铺路：将 go fix ...</description></item><item><title>Go 1.25新特性前瞻：GC提速，容器更“懂”Go，json有v2了！</title><link>https://tonybai.com/2025/06/14/go-1-25-foresight/</link><pubDate>Sat, 14 Jun 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/06/14/go-1-25-foresight/</guid><description>Go 1.25新特性前瞻：GC提速，容器更“懂”Go，json有v2了！ - Tony Bai =============== Tony Bai 一个程序员的心路历程 * Google Go语言编码风格规范 * Google Go语言编码风格规范：指南篇 * Google Go语言编码风格规范：决定篇 * Google Go语言编码风格规范：最佳实践篇 * Go语言第一课FAQ * Go语言进阶课...</description></item><item><title>爽就完了！Go语言的“简单之美”为何让开发者直呼过瘾？</title><link>https://tonybai.com/2025/06/12/grog-brain-heaven/</link><pubDate>Thu, 12 Jun 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/06/12/grog-brain-heaven/</guid><description>爽就完了！Go语言的“简单之美”为何让开发者直呼过瘾？ - Tony Bai =============== Tony Bai 一个程序员的心路历程 * Google Go语言编码风格规范 * Google Go语言编码风格规范：指南篇 * Google Go语言编码风格规范：决定篇 * Google Go语言编码风格规范：最佳实践篇 * Go语言第一课FAQ * Go语言进阶课FAQ * 关于我...</description></item><item><title>“这代码迟早出事！”——复盘线上问题：六个让你头痛的Go编码坏味道</title><link>https://tonybai.com/2025/05/31/six-smells-in-go/</link><pubDate>Sat, 31 May 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/05/31/six-smells-in-go/</guid><description>本文永久链接 – https://tonybai.com/2025/05/31/six-smells-in-go 大家好，我是Tony Bai。 在日常的代码审查 (Code Review) 和线上问题复盘中，我经常会遇到一些看似不起眼，却可能埋下巨大隐患的 Go 代码问题。这些“编码坏味道”轻则导致逻辑混乱、性能下降，重则引发数据不一致、系统崩溃，甚至让团队成员在深夜被告警声惊醒，苦不堪言。 今...</description></item><item><title>当Gopher拥有了“Go语言女友”：一张图带你读懂Go的那些“可爱”特性</title><link>https://tonybai.com/2025/05/30/gopher-girlfriend/</link><pubDate>Fri, 30 May 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/05/30/gopher-girlfriend/</guid><description>当Gopher拥有了“Go语言女友”：一张图带你读懂Go的那些“可爱”特性 - Tony Bai =============== Tony Bai 一个程序员的心路历程 * Google Go语言编码风格规范 * Google Go语言编码风格规范：指南篇 * Google Go语言编码风格规范：决定篇 * Google Go语言编码风格规范：最佳实践篇 * Go语言第一课FAQ * Go语言进阶...</description></item><item><title>Go工具链进化：go.mod新增ignore指令，破解混合项目构建难题</title><link>https://tonybai.com/2025/05/22/go-mod-ignore-directive/</link><pubDate>Thu, 22 May 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/05/22/go-mod-ignore-directive/</guid><description>Go工具链进化：go.mod新增ignore指令，破解混合项目构建难题 - Tony Bai =============== Tony Bai 一个程序员的心路历程 * Google Go语言编码风格规范 * Google Go语言编码风格规范：指南篇 * Google Go语言编码风格规范：决定篇 * Google Go语言编码风格规范：最佳实践篇 * Go语言第一课FAQ * Go语言进阶课F...</description></item><item><title>WaitGroup.Go要来了？Go官方提案或让你告别Add和Done样板代码</title><link>https://tonybai.com/2025/04/03/waitgroup-go-proposal/</link><pubDate>Thu, 03 Apr 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/04/03/waitgroup-go-proposal/</guid><description>WaitGroup.Go要来了？Go官方提案或让你告别Add和Done样板代码 - Tony Bai =============== Tony Bai 一个程序员的心路历程 * Google Go语言编码风格规范 * Google Go语言编码风格规范：指南篇 * Google Go语言编码风格规范：决定篇 * Google Go语言编码风格规范：最佳实践篇 * Go语言第一课FAQ * Go语言...</description></item><item><title>体验Gemini Deep Research：以Go语言未来演进方向分析为例</title><link>https://tonybai.com/2025/03/16/gemini-deep-research-experience/</link><pubDate>Sun, 16 Mar 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/03/16/gemini-deep-research-experience/</guid><description>本文永久链接 – https://tonybai.com/2025/03/16/gemini-deep-research-experience 基于大模型的AI已进入深度思考时代，以DeepSeek R1模型为代表的开源模型给主流AI厂商带来了巨大压力。其实早在2024年12月份，Google就在一篇名为“Try Deep Research and our new experimental mod...</description></item><item><title>Go 1.24中值得关注的几个变化</title><link>https://tonybai.com/2025/02/16/some-changes-in-go-1-24/</link><pubDate>Sun, 16 Feb 2025 00:00:00 +0800</pubDate><guid>https://tonybai.com/2025/02/16/some-changes-in-go-1-24/</guid><description>本文永久链接 – https://tonybai.com/2025/02/16/some-changes-in-go-1-24 北京时间2025年2月12日，恰逢中国传统元宵佳节，远在美国的Go团队正式发布了Go 1.24的第一个版本Go 1.24.0。这也是Go团队在更换Tech Leader为Austin Clements后发布的首个大版本。 按照惯例，每次Go大版本发布时，我都会撰写一篇“G...</description></item><item><title>Go 1.22中值得关注的几个变化</title><link>https://tonybai.com/2024/02/18/some-changes-in-go-1-22/</link><pubDate>Sun, 18 Feb 2024 00:00:00 +0800</pubDate><guid>https://tonybai.com/2024/02/18/some-changes-in-go-1-22/</guid><description>本文永久链接 – https://tonybai.com/2024/02/18/some-changes-in-go-1-22 美国时间2024年2月6日，正当中国人民洋溢在即将迎来龙年春节的喜庆祥和的气氛中时，Eli Bendersky代表Go团队在Go官博发文“Go 1.22 is released!”，正式向世界宣告了Go 1.22版本的发布！ &amp;gt; 注：大家可以从Go官网下载Go 1.22的...</description></item><item><title>Go 1.22新特性前瞻</title><link>https://tonybai.com/2023/12/25/go-1-22-foresight/</link><pubDate>Mon, 25 Dec 2023 00:00:00 +0800</pubDate><guid>https://tonybai.com/2023/12/25/go-1-22-foresight/</guid><description>本文永久链接 – https://tonybai.com/2023/12/25/go-1-22-foresight 美国时间2023年12月20日，Go官方宣布Go 1.22rc1发布，开启了为期2个多月的、常规的公测之旅，Go 1.22预计将于2024.2月份正式发布！ 除了在官网下载Go 1.22rc1版本进行新特性体验之外，我们还可以通过在线的Go Playground选择“Go dev b...</description></item><item><title>聊聊Go语言的全局变量</title><link>https://tonybai.com/2023/03/22/global-variable-in-go/</link><pubDate>Wed, 22 Mar 2023 00:00:00 +0800</pubDate><guid>https://tonybai.com/2023/03/22/global-variable-in-go/</guid><description>本文永久链接 – https://tonybai.com/2023/03/22/global-variable-in-go &amp;gt; 注：上面篇首配图的底图由百度文心一格生成。 C语言是Go语言的先祖之一，Go继承了很多C语言的语法与表达方式，这其中就包含了**全局变量**，虽然Go在其语法规范中并没有直接给出全局变量的定义。但是已经入门Go的童鞋都知道，在Go中**包的导出变量(exported va...</description></item><item><title>Go 1.20中值得关注的几个变化</title><link>https://tonybai.com/2023/02/08/some-changes-in-go-1-20/</link><pubDate>Wed, 08 Feb 2023 00:00:00 +0800</pubDate><guid>https://tonybai.com/2023/02/08/some-changes-in-go-1-20/</guid><description>本文永久链接 – https://tonybai.com/2023/02/08/some-changes-in-go-1-20 美国时间2023年2月1日，唯一尚未退休的Go语言之父Robert Griesemer代表Go核心开发团队在Go官博撰文正式发布了Go 1.20版本。就像Russ Cox在2022 GopherCon大会所说的那样：**Go2永不会到来，Go 1.x.y将无限延续**！ ...</description></item><item><title>让reviewdog支持gitlab-push-commit，守住代码质量下限</title><link>https://tonybai.com/2022/09/08/make-reviewdog-support-gitlab-push-commit-to-preserve-the-code-quality-floor/</link><pubDate>Thu, 08 Sep 2022 00:00:00 +0800</pubDate><guid>https://tonybai.com/2022/09/08/make-reviewdog-support-gitlab-push-commit-to-preserve-the-code-quality-floor/</guid><description>本文永久链接 – https://tonybai.com/2022/09/08/make-reviewdog-support-gitlab-push-commit-to-preserve-the-code-quality-floor 一. 代码质量保证的手段 从世界上首款计算机高级程序设计语言Fortran自上世纪50年代诞生以来，编程这个行当已经走过了近70年。虽然年头已不少，但不可否认的一点是...</description></item><item><title>Go 1.18中值得关注的几个变化</title><link>https://tonybai.com/2022/04/20/some-changes-in-go-1-18/</link><pubDate>Wed, 20 Apr 2022 00:00:00 +0800</pubDate><guid>https://tonybai.com/2022/04/20/some-changes-in-go-1-18/</guid><description>本文永久链接 – https://tonybai.com/2022/04/20/some-changes-in-go-1-18 &amp;gt; 从3月23日开始，我居家办公了20+天。这期间我本来是应该有时间写下这篇综述类文章的，但是封了两天后，抢菜、带娃的事情就开始困扰着我。我实在没有下笔写下这篇文章的心思。4月13日终于解封了，上班后的气象就是不一样，人也精神了很多，于是这篇文章也被提上了日程。希望新冠疫...</description></item><item><title>Go 1.17新特性详解：使用基于寄存器的调用惯例</title><link>https://tonybai.com/2021/08/20/using-register-based-calling-convention-in-go-1-17/</link><pubDate>Fri, 20 Aug 2021 00:00:00 +0800</pubDate><guid>https://tonybai.com/2021/08/20/using-register-based-calling-convention-in-go-1-17/</guid><description>本文永久链接 – https://tonybai.com/2021/08/20/using-register-based-calling-convention-in-go-1-17 除了Go语言特性与go module有重要变化之外，Go编译器与Go运行时也都有着优化与改进，这两方面的变化对Go程序的构建与运行影响巨大。在这个系列的最后一篇中，我们来看看编译器与运行时中那些值得关注的变化。 1. ...</description></item><item><title>Uber Go语言编码规范</title><link>https://tonybai.com/2019/10/12/uber-go-style-guide/</link><pubDate>Sat, 12 Oct 2019 00:00:00 +0800</pubDate><guid>https://tonybai.com/2019/10/12/uber-go-style-guide/</guid><description>Uber是世界领先的生活出行服务提供商，也是Go语言的早期adopter，根据Uber工程博客的内容，大致可以判断出Go语言在Uber内部扮演了十分重要的角色。Uber内部的Go语言工程实践也是硕果累累，有大量Go实现的内部工具被Uber开源到github上，诸如被Gopher圈熟知的zap、jaeger等。2018年年末Uber将内部的Go风格规范开源到github，经过一年的积累和更新，该规范...</description></item><item><title>对一段有关Go Code Block和变量作用域的代码的简要分析</title><link>https://tonybai.com/2018/05/11/the-analysis-of-a-go-code-snippet-about-code-blocks-and-scope/</link><pubDate>Fri, 11 May 2018 00:00:00 +0800</pubDate><guid>https://tonybai.com/2018/05/11/the-analysis-of-a-go-code-snippet-about-code-blocks-and-scope/</guid><description>近期，Go team的David CrawShaw在twitter上贴出了一段代码，如下： func main() { if a := 1; false { } else if b := 2; false { } else if c := 3; false { } else { println(a, b, c) } } David CrawShaw想表达的意图是gopher们很少在”else if...</description></item></channel></rss>