string 与 rune 的设计哲学:为什么Go 程序员很少为“乱码”烦恼?

本文永久链接 – https://tonybai.com/2025/10/13/string-and-rune-in-go 大家好,我是Tony Bai。 “为什么我的字符又乱码了?!” 这是一个在软件开发历史上,曾让无数程序员彻夜难眠的哀嚎。处理文本,是编程中最基础的任务之一,但其背后关于编码 (Encoding) 和字符集 (Character Set) 的水,远比看起来要深。正如 Joel Spolsky 在其经典文章中疾呼的那样,这是每位软件开发者都必须了解的“绝对最低限度”的知识。 ...

October 13, 2025 · 8 min · Tony Bai

Go导出标识符:那些鲜为人知的细节

本文永久链接 – https://tonybai.com/2025/01/23/the-hidden-details-of-go-exported-identifiers 前不久,在“Go+用户组”微信群里看到有开发者向七牛云老板许式伟反馈七牛云Go SDK中的某些类型没有导出,导致外部包无法使用的问题(如下图): ...

January 23, 2025 · 12 min · Tony Bai

Go:值与指针

本文永久链接 – https://tonybai.com/2023/05/05/go-value-and-pointer 1. 计算机中的值 在百万年的演化历史中,人类对事物的属性进行了抽象,有了数量、精度、信息等概念的表示,对应的我们称之为整数、小数、文本文字等。计算机出现后,我们使用计算机对真实世界的问题进行建模,通过计算机的高效计算解决这些问题并输出答案。为了建模,计算机需要建立对上述基本概念的抽象和表示,于是有了类型与值的概念。 ...

May 5, 2023 · 11 min · Tony Bai