工欲善其事,必先利其器。从零开始配置高效的 Go 开发环境。
系统安装
- 1. 下载 .msi 安装包 (官网/国内镜像)
- 2. 双击运行,一路 Next 完成安装
- 3. 验证: CMD 输入
go version
- 推荐:
brew install go
- 可选: 下载 .pkg 安装包手动安装
- 验证: 终端输入
go version
- 1. 下载 .tar.gz 源码包
- 2. 解压:
tar -C /usr/local -xzf ...
- 3. 配置 PATH:
export PATH=...
开发工具
- VS Code (推荐) + Go 插件
- GoLand (功能强大,收费)
- Git 版本控制工具
核心配置
- Go Modules 依赖管理 (go mod)
- GOPROXY 国内镜像加速
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
go version
go mod init example.com/hello
深入掌握 Go 的核心语法特性,建立扎实的编程基础。
变量与控制流
- 变量声明 (var, :=) 与 常量 (const)
- 基本类型: int, bool, string, byte
- 流程控制: if, for, switch
- 延迟执行: defer (LIFO)
核心数据结构
- 数组 (Array) vs 切片 (Slice)
- 切片操作: make, append, copy
- 映射 (Map) 的使用与遍历
- 结构体 (Struct) 与 方法 (Method)
函数与指针
- 多返回值函数 & 匿名函数
- 指针 (Pointer) 与 值传递
- 接口 (Interface) 与 空接口
- 错误处理 (Error, Panic, Recover)
深入理解 Go 的接口设计哲学、反射机制与泛型编程。
- 接口定义与 Duck Typing
- 空接口与类型断言
- Reflect 反射包使用
- Go 泛型 (Generics) 基础
Go 的杀手锏。掌握 Goroutine 和 Channel,构建高性能程序。
- Goroutine 协程与 GMP 模型
- Channel 通道与 Select
- Sync 包 (Mutex/WaitGroup)
- Context 上下文控制
- fmt / os / io / bufio
- net/http 网络编程
- encoding/json 数据处理
- time / strings / strconv
使用 Gin 框架开发 API,掌握数据库与中间件技术。
- Gin 框架路由与中间件
- MySQL 数据库设计
- GORM ORM 框架实战
- Redis 缓存应用
- gRPC 与 Protobuf
- 服务发现 (Etcd/Consul)
- Docker 容器化
- Kubernetes (K8s) 基础
从基础到实战,精选 Bilibili 优质视频教程。
基础入门
Web开发
高级进阶