别把 Go 写成 Java:毁掉项目从过度架构开始

本文永久链接 – https://tonybai.com/2026/06/05/stop-writing-go-like-java-avoid-over-architecting 大家好,我是Tony Bai。 前不久,Go 语言社区 Reddit (r/golang) 上爆发了两场激烈的争论。 这两个帖子的主题直击了无数 Go 开发者的灵魂深处: 我们该如何构建一个大型的 Go 模块化单体架构,而不被复杂的“架构设计”淹没? 为什么现在的 Go 项目里,pkg 和 internal 目录被滥用得如此令人发指? 如果你正在维护一个中大型的 Go 后端项目,你大概率经历过这样的绝望时刻:为了加一个极其简单的业务字段,你需要穿透 handler、usecase、domain、repository、adapter 等足足五层抽象结构;你的项目根目录下躺着一个 pkg 文件夹,里面又套着 internal,代码藏在七八级目录深处。 ...

June 5, 2026 · 8 min · Tony Bai

Go 的“显式哲学”为何在接口上“食言”了?—— 探秘隐式接口背后的设计智慧

本文永久链接 – https://tonybai.com/2026/01/14/go-explicit-philosophy-implicit-interfaces-design-wisdom 大家好,我是Tony Bai。 “Go 倾向于显式、冗长的代码,而不是‘魔法’。那么,为什么接口实现却是隐式的呢?这让理解代码变得困难多了,简直让我抓狂。” ...

January 14, 2026 · 8 min · Tony Bai

Goroutine “气泡”宇宙——Go 并发模型的新维度

本文永久链接 – https://tonybai.com/2025/12/20/goroutine-bubble-universe-go-concurrency-new-dimension 大家好,我是Tony Bai。 goroutine 是 Go 并发模型的基石,我们习惯于将其视为一个个轻量、独立的执行单元。然而,近年来,Go 语言中出现了一种新的、微妙的并发概念,Go 核心团队的成员们亲切地称之为 “Goroutine 气泡” (Goroutine Bubbles)。 ...

December 20, 2025 · 7 min · Tony Bai