摘要:
本篇目标:理解 Go 没有继承的世界里怎么做抽象,以及错误如何流转。这两件事决定了 Go 代码的"性格"。 一、接口与隐式实现 接口是一组方法签名。关键规则:一个类型不需要声明"我实现了某接口",只要方法集匹配,它就自动满足。 type Speaker interface { Speak() str 阅读全文
摘要:
本篇目标:用 Go 的方式组织数据。这三种类型是日常代码的绝对主力,理解它们的底层行为能避开大量坑。 一、数组 vs 切片 数组长度固定,是值类型,赋值即复制: var a [3]int // [0 0 0] b := [3]int{1, 2, 3} 切片是日常主力,长度可变,底层是"指针 + 长度 阅读全文
摘要:
一、安装 Go 从 go.dev/dl 下载安装包(macOS 可 brew install go)。验证: $ go version go version go1.22.0 go env 查看配置,初学只需知道 GOPATH(工作目录)和 GOMODCACHE(依赖缓存),默认即可。 二、第一个程 阅读全文