标签 Go语言 下的文章

AI 时代,软件大师们为什么都倒戈向 Go 和 Rust 了?

本文永久链接 – https://tonybai.com/2026/05/14/uncle-bob-esr-on-why-we-are-turning-to-go-and-rust-in-the-ai-era

大家好,我是Tony Bai。

在软件工程的浩瀚星河中,有两位堪称“活化石”级别的宗师:

一位是 Eric S. Raymond (ESR),开源运动的先驱,那本被誉为开源圣经的《大教堂与集市》以及《Unix编程艺术(The Art of UNIX Programming)》一书均是出自他手。他是一个写了 40 年 C 语言的硬核黑客。

另一位是 Uncle Bob Martin (Bob 大叔),敏捷宣言的签署人之一,《敏捷软件开发》、《代码整洁之道 (Clean Code)》等程序员经典书籍的作者,无数 Java 和 C# 程序员的精神导师。

这两位加起来写了快一百年代码的传奇人物,最近却在 X (Twitter) 平台上,不约而同地抛出了一个足以引发技术圈大地震的论断:

在如今这个被 AI 席卷的时代,他们双双放弃了自己曾经最擅长的语言(C 和 Java),转而全面拥抱 Go 语言,并在特定底层场景下使用 Rust。

更令人震撼的是,ESR 直接宣告了手工古法编程模式的死刑:

“手写代码的时代基本结束了(The age of hand-coding is mostly over)。现在选择编程语言的标准,已经彻底变了。”

今天,我们就来深度扒开这场顶级黑客的“赛博夜话”,看看在 AI 智能体(Agent)狂飙突进的 2026 年,我们究竟该如何重新审视和选择我们手中的“兵器”。

认知颠覆:当 AI 成为主程序员,语言的选择标准变了

我们过去是如何选择编程语言的?

语法是否优雅?生态是否繁荣?框架是否齐全?这些都是基于“人类如何高效手写代码”而设定的标准。

但 ESR 尖锐地指出,在如今我们拥有“机器朋友(Robot friends / AI)”来完成绝大部分代码生成和翻译工作的时代,这些旧标准已经失效了。

现在的核心标准只有两个:

1. 你的 AI 朋友,能不能高质量地生成这种语言的代码?
2. 生成之后,作为人类的你,能不能一眼看懂(Review)这些代码?

“如今,我使用什么计算机语言是否顺手,已经不再那么重要了,真正重要的是我正在使用的‘机器朋友’能否高质量地生成它。
同时也重要的是我能否读懂这门语言,因为我需要亲自去审查(Review)这些代码。”

在这个新标准下,那些充满了黑魔法(如各种奇葩的宏、复杂的继承体系、极度隐晦的元编程)的语言,瞬间成了灾难。因为当 AI 吐出几百行充满魔法的代码时,人类审查的“认知负荷”将是灾难性的。

宗师的抉择:为什么是 Go 和 Rust?

在这个全新的游戏规则下,两位宗师给出了他们惊人一致的答案。

Bob 大叔的 Go 语言初体验:快、无聊、但完美契合 AI

Bob 大叔在评论区透露,他正在设计一门关于“使用 Agent 进行软件工程”的在线课程。

“在过去,我会选择像 Java、C# 或 JavaScript 这样流行的语言来做课程。但这次我选择了 Go。不是因为它流行,而是因为它很快(Fast)。我的学生们不会花太多精力去钻研 Go 的语法细节,但他们会看到 Go 的表现。”

Go 语言那常被诟病的“啰嗦”和“无聊”,在 AI 时代反而成了最强大的护城河。

因为 Go 的语法极度收敛,没有隐式类型转换,没有复杂的泛型继承。当 AI 生成一段 Go 代码时,那满屏极其直白的 if err != nil,让人类工程师一眼就能看穿它的逻辑底裤。在审查 AI 代码时,没有魔法,就是最高的生产力。

ESR 的决断:别了,我写了 40 年的 C 语言

ESR 的话更具传奇色彩和悲壮感:

“我可能再也不会用 C 语言开新项目了。那除了自虐还有什么意义?我花了 40 年写 C,我非常精通。但我会毫不留恋地把它,连同它的缓冲区溢出、堆破坏、未定义行为和可移植性问题,全部抛在脑后。”

他现在的探索性编程,全部交给了 Python 或 Go。

“我的机器朋友在生成这两种语言的代码时都非常出色。我认为它们在生成 Go 代码时的表现甚至略胜一筹,这可能是因为 Go 语言拥有更小的表面积(smaller surface)。

(注:Smaller surface 意味着语法简单,AI 预测下一个 Token 时的歧义和错误率极低)

至于 Rust,ESR 将其定位为“终极的降落场”。

当他需要极其坚固的内存安全保证,且代码的探索期已经结束,进入严肃的生产部署阶段时,他会让 AI 把代码翻译成 Rust。

“Rust 满足了我的要求——我发现它写起来很麻烦,但读起来基本没问题。”

时代的阵痛:被 AI 降维打击的传统生态

这场讨论,不仅是对 Go 和 Rust 的赞歌,更是对一些传统“大厂语言”的残酷揭底。

ESR 毫不客气地吐槽了 Python 曾经的混乱(尽管它现在有了类型提示和 uv 等现代工具,情况有所好转):

“Python 曾是我的最爱,但在 Python 2 到 Python 3 的灾难性过渡、GIL 导致的并发地狱、以及包管理的混乱之后,我曾对它感到厌倦……如果我现在要写一个比 Python 粘合脚本大得多的东西,我只会耸耸肩,然后直接去用 Go。”

在推特的评论区,另一位开发者的一句话,道出了更多人的心声:

“Go 代码的质量,很大程度上是因为 Go 语言本身往往倾向于极高的质量(因为缺乏炫技的空间)。所以 AI 生成的代码,也顺理成章地继承了这种高质量。”

当一门语言为了迎合人类的“偷懒”和“炫技”而变得越来越复杂时(比如不断叠加新特性的 C++ 和 Java),它在 AI 时代反而会成为一种累赘。

因为 AI 不需要语法糖,AI 需要的是绝对的清晰和确定性。

反思:从“写手”到“审查员”的身份跃迁

两位古灰级黑客的这番言论,给所有还在为了“哪种语言的特性更酷炫”而争得面红耳赤的年轻程序员,狠狠地上了一课。

时代的列车已经呼啸而过。

当代码生成不再是瓶颈,软件工程师的核心价值,正在不可逆转地从“Writer(编写者)”向“Reader & Reviewer(阅读者与审查者)”迁移。

在这个新时代,我们评估一项技术的眼光必须升级:

  1. 可审计性(Auditability)大于一切:如果一段代码极其简洁但难以调试,它就是垃圾。Go 语言的“直白”,在 AI 时代成为了最顶级的安全感。
  2. 安全性的底座转移:像 Rust 这样通过极其严苛的编译器来保证内存安全的语言,将成为 AI 时代最可靠的“数字基础设施钢筋”。你可能不需要手写它,但你的 Agent 会为你生成它,并由编译器确保它不会在半夜崩溃。
  3. 拥抱“机器思维”:放下程序员的“文人相轻”,接受那些对机器友好、对审查友好的“无聊技术”。

小结:向宗师致敬,向未来前行

如果连写了 40 年 C 语言的 Eric S. Raymond,和开创了现代软件工程思维的 Uncle Bob,都能毫不犹豫地放下过去的骄傲,全身心地拥抱 AI、Go 和 Rust。

我们这些普通开发者,还有什么理由紧抱着那些陈旧的“鄙视链”不放呢?

手写代码的时代正在落幕,但软件工程的黄金时代,才刚刚开始。

用 Go 来快速验证和构建业务,用 Rust 来打造坚不可摧的底层,让 AI 成为那个不知疲倦的打字员。这,就是顶级黑客们为我们指明的 2026 年生存法则。

资料链接:https://x.com/esrtweet/status/2054288478750597593


今日互动探讨:

连 Bob 大叔和 ESR 都倒戈了!你同意他们“手写代码时代已结束”、“更看重代码审查的可读性”的观点吗?在日常的 AI 辅助编程中,你觉得哪种语言的体验最好?

欢迎在评论区分享你的看法!


还在为写 Agent 框架频频死循环、上下文爆炸而束手无策?我的新专栏 从0 开始构建 Agent Harness 将带你:

  • 抛弃臃肿框架,回归“驾驭工程 (Harness Engineering)”的第一性原理
  • 用 Go 语言手写 ReAct 循环、并发拦截与上下文压缩引擎等,复刻极简OpenClaw
  • 构建坚不可摧的 Safety Middleware 与飞书人工审批防线
  • 在底层实现 Token 成本审计、链路追踪与自动化跑分评估
  • 从“调包侠”进化为掌控大模型边界的“AI 操作系统架构师”

扫描下方二维码,开启从 0 开始构建Agent Harness 的实战之旅。


原「Gopher部落」已重装升级为「Go & AI 精进营」知识星球,快来加入星球,开启你的技术跃迁之旅吧!

我们致力于打造一个高品质的 Go 语言深度学习AI 应用探索 平台。在这里,你将获得:

  • 体系化 Go 核心进阶内容: 深入「Go原理课」、「Go进阶课」、「Go避坑课」等独家深度专栏,夯实你的 Go 内功。
  • 前沿 Go+AI 实战赋能: 紧跟时代步伐,学习「Go+AI应用实战」、「Agent开发实战课」、「Agentic软件工程课」、「Claude Code开发工作流实战课」、「OpenClaw实战分享」等,掌握 AI 时代新技能。
  • 星主 Tony Bai 亲自答疑: 遇到难题?星主第一时间为你深度解析,扫清学习障碍。
  • 高活跃 Gopher 交流圈: 与众多优秀 Gopher 分享心得、讨论技术,碰撞思想火花。
  • 独家资源与内容首发: 技术文章、课程更新、精选资源,第一时间触达。

衷心希望「Go & AI 精进营」能成为你学习、进步、交流的港湾。让我们在此相聚,享受技术精进的快乐!欢迎你的加入!

img{512x368}


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

“用 Go 打天下,用 Rust 救火”:这才是 2026 年后端架构的唯一正解

本文永久链接 – https://tonybai.com/2026/05/11/go-vs-rust-backend-architecture-the-2026-strategy

大家好,我是Tony Bai。

如果你经常逛各大技术社区,你一定会发现一个永远充满火药味的话题:Go 和 Rust,到底谁才是未来的后端霸主?

两派的支持者常常吵得不可开交。Go 开发者嘲笑 Rust 编译器像个严厉的教导主任,写个代码能让人掉光头发;Rust 开发者则鄙视 Go 的 GC(垃圾回收)带来的延迟毛刺,觉得它就是个“性能玩具”。

但在真实的商业战场上,这种“非黑即白”的零和博弈毫无意义。

最近,海外技术团队 CodeStax.Ai 发表了一篇文章,题目非常霸气:Rust vs Go:2026 年唯一有意义的后端语言对决

这篇文章没有去纠结语法的优劣,而是直接从企业成本、团队扩张、以及系统演进的宏观视角,给出了一个极具颠覆性,却又务实到令人拍案叫绝的架构结论:

“用 Go 来构建(Build)系统,用 Rust 来优化(Optimize)系统。”

今天,我们就来拆解这套现代后端的终极生存哲学,看看顶级的架构师们,是如何在这对“冰与火”的语言中找到完美平衡的。

无情的现实:每一个后端系统,最终都会撞上“那堵墙”

在讲语言之前,我们必须先认清系统演进的残酷规律。

当你刚刚启动一个新项目时,一切都很美好。

你用微服务框架快速拉起几个 API,部署到 AWS 的容器服务(ECS)里,挂上消息队列(SQS)。一切都运转良好:接口响应很快,团队每个星期都能迭代新功能,老板很开心,每月的云服务器账单也完全在可控范围内。

直到有一天,增长(Growth)发生了。

流量呈指数级上升。突然之间,原本平稳的系统开始出现各种诡异的症状:

  • 系统的内存占用越来越大,云账单的增长速度开始远远超过业务的增长速度。
  • 在毫无征兆的流量高峰期,API 出现了莫名其妙的延迟毛刺(Latency Spikes)。
  • 微小的性能低下,在每天几亿次的调用中,被复利放大成了拖垮整个集群的致命瓶颈。

这就是所有后端系统迟早都会撞上的“那堵墙(The Wall)”。

当撞墙的那一刻,老板问你的问题,将不再是:“我们最快多久能把这个功能做出来?”

而是变成了极其致命的灵魂拷问:

“我们如何在不拖慢业务团队开发速度的前提下,让这个庞大的系统保持稳定、高效,并且把那该死的云账单降下来?”

正是在这堵墙面前,Go 和 Rust 的选择,才真正具有了生死攸关的意义。

Go 的主场:敏捷与编排的绝对王者

在跨越“那堵墙”之前的大部分时间里,以及在墙外 80% 的业务场景中,Go 语言是毫无争议的默认王者。

为什么?因为现代的后端架构,本质上不再是写一个庞大的单体应用,而是在做“服务编排(Orchestration)”

你需要一个 API 网关来接收请求,需要一个个微服务去读写数据库(RDS),需要 Worker 去消费消息队列(Kafka),还需要后台的定时任务去跑批处理。

这些错综复杂的分布式场景,对语言的要求出奇的一致:

  • 启动要极快:为了适应容器和 Serverless(Lambda)的弹性伸缩。
  • 并发要极简:遇到高并发?随手 go func() 就能轻松应对 SQS 消费和扇出(Fan-out)模型。
  • 心智负担要极低:代码必须像白开水一样直白。今天刚入职的应届生,明天就能看懂并修改跑了三年的核心代码。

Go 语言完美地满足了这一切。它的设计哲学就是:“天下武功,唯快不破;保持简单,拒绝炫技。”

在 Go 的世界里,开发者的个人时间,永远比 CPU 的计算时间更昂贵。它用“相对够用”的性能,换取了团队极高的迭代速度和代码的一致性。

这就是为什么,Go 语言统治了业务服务的“编排层(Orchestration Layer)”。

Rust 的拔剑:在深水区里,手撕性能瓶颈

然而,当你的系统撞上“那堵墙”,当系统中某些特定的组件,变成了吞噬资源的黑洞时,Go 语言的 GC(垃圾回收)和相对粗放的内存管理,就会显得力不从心。

这个时候,就是 Rust 拔剑出鞘的时刻。

Rust 不适合用来写那些三天两头变需求的业务 CRUD 接口,它真正的主战场,是系统里那些承担“重体力劳动(Heavy-lifting components)”的深水区:

  • 高吞吐量的消息处理器:比如每天要吞吐数百亿条记录的 Kafka 消费者集群。
  • 实时流处理和欺诈检测引擎:在这些场景下,哪怕是几十毫秒的 GC 停顿,都会导致不可估量的经济损失。
  • 成本敏感的边缘计算(Edge Compute):在资源极其受限的环境中榨干最后一滴 CPU 性能。

在这些领域,Rust 的设计哲学展现出了降维打击般的威力:“控制所有重要的事情。”

Rust 假设:线上的 Bug 是极其昂贵的;规模化后的性能低下是致命的。因此,它用极其严苛的编译器,强迫你在写代码的阶段就解决掉所有可能的内存泄漏和并发竞争。

它没有 GC,内存效率极高。在 CPU 密集型的任务中,它通常比 Go 快 2 到 5 倍。

终极兵法:双剑合璧的实战演练

聪明的架构师早就看透了:我们不需要在 Go 和 Rust 之间二选一,我们需要的是将它们各自部署在正确的战线上。

在真实的硅谷大厂和独角兽公司中,最经典的架构模式已经浮出水面:

Pattern 1:用 Go 写服务层,用 Rust 写热点路径(Hot Path)

  • 让 Go 去处理绝大多数的 API 路由、微服务间通信和业务编排。这保证了团队的开发速度。
  • 一旦监控发现某个模块成了 CPU 或内存的瓶颈(比如音视频转码、核心推荐算法),立刻将其剥离,用 Rust 重写,作为一个独立的高性能微服务被 Go 调用。这种“好钢用在刀刃上”的策略,避免了过度工程化。

Pattern 2:为成本和延迟而战

  • 当你的 AWS ECS 集群因为某个 Go 写的聚合管道而不断扩容,云账单即将失控时;或者当你的金融系统要求绝对可预测的执行时间,不能容忍任何 GC 暂停时。
  • 毫无犹豫地让 Rust 进场接管。它省下的机器成本,足以支付重写代码的代价。

小结:别为了追求“最好”,而忘记了“为什么出发”

最后,我想分享一下我最喜欢的一段话:

“在这个世界上,你永远无法通过选择一门‘最好的语言’来赢得战争。”

“你赢得战争的方式是:深刻理解你的系统会在哪里崩溃;知道哪种工具能精准地解决那个特定的问题;并且,只有在确实能带来巨大回报的地方,才引入复杂性。

如果你的系统还在为了活下去而疯狂堆功能,请闭上眼睛,用 Go 语言全力冲刺。

如果你的系统已经庞大到每次发版都在流血,每多消耗 1MB 内存都在烧钱,那么,请翻开 Rust 的手册。

用 Go 来构建你的商业帝国,用 Rust 来捍卫它的边界。

这,才是 2026 年,一个成熟架构师应有的顶级大局观。

资料链接:https://codestax.medium.com/rust-vs-go-the-only-backend-language-comparison-that-actually-matters-in-2026-6b8303dbb7c2


今日互动探讨:

在你的公司里,是否也遇到了系统“撞墙”的时刻?你们目前是如何解决性能瓶颈的?有没有考虑过,或者正在尝试引入 Rust 来重写核心的 Go 模块?

欢迎在评论区分享你的实战经验与踩坑血泪史!


还在为写 Agent 框架频频死循环、上下文爆炸而束手无策?我的新专栏 从0 开始构建 Agent Harness 将带你:

  • 抛弃臃肿框架,回归“驾驭工程 (Harness Engineering)”的第一性原理
  • 用 Go 语言手写 ReAct 循环、并发拦截与上下文压缩引擎等,复刻极简OpenClaw
  • 构建坚不可摧的 Safety Middleware 与飞书人工审批防线
  • 在底层实现 Token 成本审计、链路追踪与自动化跑分评估
  • 从“调包侠”进化为掌控大模型边界的“AI 操作系统架构师”

扫描下方二维码,开启从 0 开始构建Agent Harness 的实战之旅。


原「Gopher部落」已重装升级为「Go & AI 精进营」知识星球,快来加入星球,开启你的技术跃迁之旅吧!

我们致力于打造一个高品质的 Go 语言深度学习AI 应用探索 平台。在这里,你将获得:

  • 体系化 Go 核心进阶内容: 深入「Go原理课」、「Go进阶课」、「Go避坑课」等独家深度专栏,夯实你的 Go 内功。
  • 前沿 Go+AI 实战赋能: 紧跟时代步伐,学习「Go+AI应用实战」、「Agent开发实战课」、「Agentic软件工程课」、「Claude Code开发工作流实战课」、「OpenClaw实战分享」等,掌握 AI 时代新技能。
  • 星主 Tony Bai 亲自答疑: 遇到难题?星主第一时间为你深度解析,扫清学习障碍。
  • 高活跃 Gopher 交流圈: 与众多优秀 Gopher 分享心得、讨论技术,碰撞思想火花。
  • 独家资源与内容首发: 技术文章、课程更新、精选资源,第一时间触达。

衷心希望「Go & AI 精进营」能成为你学习、进步、交流的港湾。让我们在此相聚,享受技术精进的快乐!欢迎你的加入!

img{512x368}


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

如发现本站页面被黑,比如:挂载广告、挖矿等恶意代码,请朋友们及时联系我。十分感谢! Go语言第一课 Go语言进阶课 AI原生开发工作流实战 从 0 开始构建 Agent Harness Go语言精进之路1 Go语言精进之路2 Go语言第一课 Go语言编程指南
商务合作请联系bigwhite.cn AT aliyun.com
这里是 Tony Bai的个人Blog,欢迎访问、订阅和留言! 订阅Feed请点击上面图片

如果您觉得这里的文章对您有帮助,请扫描上方二维码进行捐赠 ,加油后的Tony Bai将会为您呈现更多精彩的文章,谢谢!

如果您希望通过微信捐赠,请用微信客户端扫描下方赞赏码:

如果您希望通过比特币或以太币捐赠,可以扫描下方二维码:

比特币:

以太币:

如果您喜欢通过微信浏览本站内容,可以扫描下方二维码,订阅本站官方微信订阅号“iamtonybai”;点击二维码,可直达本人官方微博主页^_^:
本站Powered by Digital Ocean VPS。
选择Digital Ocean VPS主机,即可获得10美元现金充值,可 免费使用两个月哟! 著名主机提供商Linode 10$优惠码:linode10,在 这里注册即可免费获 得。阿里云推荐码: 1WFZ0V立享9折!


View Tony Bai's profile on LinkedIn
DigitalOcean Referral Badge

文章

评论

  • 正在加载...

分类

标签

归档



View My Stats