Syntax Basics(基础语法路线)
本目录面向有 JavaScript 或 TypeScript 基础、第一次系统学习 Go 的读者。目标不是背语法,而是能够解释 Go 的值语义、零值、作用域、错误边界和资源生命周期,并写出可以编译、测试和维护的命令行程序。
推荐顺序
- Basic Syntax(基础语法):先运行一个最小程序,了解声明、函数、分支和循环的全貌。
- Package(包) 与 Import / Export(导入与导出):理解目录、包名、模块路径和可见性。
- Identifier(标识符)、Data Types(数据类型)、Variables(变量) 与 Constants(常量):建立静态类型、零值和作用域模型。
- Literal(字面量) 与 Operator(运算符):掌握值的表示、转换、比较和计算边界。
- Conditional Control(条件控制) 与 Loop Control(循环控制):组合出可读且可退出的控制流。
- Array(数组)、Slice(切片)、String(字符串) 与 Map(映射):理解复制、共享、可比较性和 UTF-8 边界。
- Pointer(指针) 与 Struct(结构体):理解地址、方法接收者、组合和字段标签。
- Input and Output(输入与输出)、Comment(注释) 与 Style(代码风格):把语言知识用于可测试、可维护的命令行程序。
学完后的下一步
基础语法只建立语言模型,函数的完整语义从 Function(函数) 开始,随后进入方法集、接口、泛型、错误包装、文件、并发、context 和测试等相邻专题。进入进阶目录前,应能独立解释切片扩容、映射缺失键、结构体复制和 defer 的基本行为。
验收练习
实现一个命令行成绩分类程序:使用切片保存成绩,拒绝不在 0..100 范围内的输入,使用函数返回 (string, error),按 range 遍历并输出分类结果。完成后运行 gofmt、go test(至少覆盖边界输入)和 go run 验证正常路径与失败路径。
参考资料
- Go 语言规范:核对语法、类型、初始化和求值规则。
- Effective Go:了解命名、错误处理和包组织的惯用写法。
- Go 标准库文档:核对
fmt、bufio、strings、io等 API 的当前行为。