跨越20年的对话:从 Eiffel 的“契约”到 Go 的“接口”

本文永久链接 – https://tonybai.com/2025/12/13/from-eiffel-contract-to-go-interface 大家好,我是Tony Bai。 20年前,当我第一次翻开 Bertrand Meyer 的那本巨著**《面向对象软件构造》(Object-Oriented Software Construction)** 时,一种醍醐灌顶的感觉油然而生。书中那个名为 Eiffel 的语言,以及它所倡导的 “契约式设计” (Design by Contract, DbC),仿佛为当时混乱的软件开发世界点亮了一盏明灯。 ...

December 13, 2025 · 10 min · Tony Bai

超越零值:Go 语言“构造模式”深度指南

本文永久链接 – https://tonybai.com/2025/09/12/go-constructor-pattern-guide 大家好,我是Tony Bai。 Go 语言的设计哲学崇尚简约与直白(straightforward)。其中,结构体字面量 (Struct Literal) 的存在,让我们可以用极其简单的方式创建数据结构。然而,在构建大型、复杂的系统时,这种简单性也可能成为一把双刃剑。当一个对象的创建需要满足特定前置条件、执行复杂初始化或强制执行业务规则时,我们便需要一个更强大、更可控的工具。 ...

September 12, 2025 · 9 min · Tony Bai