Go 考古:Slice 的“隐秘角落”——只读切片与扩容策略的权衡
本文永久链接 – https://tonybai.com/2025/10/02/go-archaeology-slice 大家好,我是Tony Bai。 slice(切片),可以说是 Go 语言中最重要、也最常用的数据结构,没有之一。我们每天都在使用它,尤其是 append 函数,它就像一个魔术师,总能“恰到好处”地为我们管理好底层数组的容量,让我们几乎感受不到内存分配的烦恼。 但你是否想过,这份...
本文永久链接 – https://tonybai.com/2025/10/02/go-archaeology-slice 大家好,我是Tony Bai。 slice(切片),可以说是 Go 语言中最重要、也最常用的数据结构,没有之一。我们每天都在使用它,尤其是 append 函数,它就像一个魔术师,总能“恰到好处”地为我们管理好底层数组的容量,让我们几乎感受不到内存分配的烦恼。 但你是否想过,这份...
本文永久链接 – https://tonybai.com/2025/09/30/good-taste-in-software-engineering 大家好,我是Tony Bai。 在软件工程领域,我们习惯于用“技术能力”(Technical Skill)来衡量一位工程师的优劣。他是否精通并发模型?能否写出高性能的代码?对底层原理的理解有多深?这些能力可以通过学习和重复练习来获得,是我们评价体系中...
本文永久链接 – https://tonybai.com/2025/09/29/synctest-bugs-in-go-1-25 大家好,我是Tony Bai。 Go 1.25的发布,为我们带来了一个期待已久的“并发测试神器”—— testing/synctest。这个在Go 1.24中作为实验性功能首次亮相的包,承诺将我们从time.Sleep、channel和各种脆弱的同步技巧中解放出来,让我...
本文永久链接 – https://tonybai.com/2025/09/28/how-top-performers-stand-out-in-the-age-of-ai 大家好,我是Tony Bai。 AI 正在以前所未有的速度重塑软件开发领域。从代码生成到信息检索,AI 工具无疑极大地提升了工程师的生产力。一个普遍的假设是,谁能更好地利用 AI,谁就能成为新时代的顶尖人才。然而,Dropbox...
本文永久链接 – https://tonybai.com/2025/09/27/direct-ref-to-embedded-fields-in-struct-literals 大家好,我是Tony Bai。 在 Go 语言中,结构体嵌入 (Embedding) 是一个强大而独特的特性,它为我们提供了一种优雅的“垂直组合”方式。然而,多年来,它的使用体验中一直存在一个广为人知的“反直觉”之处,一个...