|
|
4 zile în urmă | |
|---|---|---|
| lessons | 4 zile în urmă | |
| .gitignore | 4 zile în urmă | |
| INSTALL.md | 4 zile în urmă | |
| README.md | 4 zile în urmă | |
| go.mod | 4 zile în urmă |
按编号逐级学习,每个例程独占一个文件夹,代码、测试和该例程说明放在一起,不与其他例程混放。
.
├── README.md # 学习目录与公共命令
├── INSTALL.md # 环境、依赖、编译运行教程
├── go.mod # 所有例程共用的模块配置
├── .gitignore
└── lessons/
├── 01_hello/ # 第 01 课:第一个 Go 程序
│ ├── README.md # 本课目标、运行方法与练习
│ ├── main.go # 本课独立入口
│ └── main_test.go # 本课测试
├── 02_variables/ # 第 02 课:变量、常量与基础类型
│ ├── README.md # 知识点、预期输出与手敲练习
│ └── main.go # 带逐节注释的参考代码
├── 03_conditions/ # 第 03 课:if 条件判断
│ ├── README.md # 语法、编译运行与边界练习
│ └── main.go # 分支、比较和逻辑运算
└── 04_loops/ # 第 04 课:for 循环
├── README.md # 循环语法、编译运行与练习
└── main.go # 累加、跳过、退出和字符串遍历
根目录不放例程代码。各课共享根目录的 go.mod,不需要逐课初始化模块,也不需要 go.work。当前模块路径 example.com/go-study 是学习用标识,不必与 Git 地址相同。
| 级别 | 例程 | 内容 | 状态 |
|---|---|---|---|
| 01 | 第一个 Go 程序 | 输出、变量、函数、首次测试 | 已建立 |
| 02 | 变量、常量与基础类型 | 声明、赋值、零值、类型转换 | 已建立 |
| 03 | if 条件判断 | 条件分支、比较、逻辑运算 | 已建立 |
| 04 | for 循环 | 三段式、条件循环、break、continue、range | 已建立 |
后续按编号逐步新增独立目录。不一次性铺开后续课程,也不把新例程写进旧例程的入口文件。
在项目根目录执行:
go version
go run ./lessons/01_hello
预期输出:
你好,Go!
欢迎开始 Go 语言学习与测试。
2 + 3 = 5
也可以进入本课目录运行:
Set-Location lessons/01_hello
go run .
go test -v .
根目录没有 Go 程序入口,不要在根目录使用
go run .。进入具体例程目录后才使用该命令。
以下命令均在项目根目录执行:
# 只运行第 01 课
go run ./lessons/01_hello
# 只测试第 01 课
go test -v ./lessons/01_hello
# 格式化、测试、检查所有课程
go fmt ./...
go test -v ./...
go vet ./...
# 编译第 01 课到对应的构建目录
New-Item -ItemType Directory -Force bin/01_hello | Out-Null
go build -o ./bin/01_hello/hello.exe ./lessons/01_hello
.\bin\01_hello\hello.exe
每个例程独立编译运行,不要使用 go run ./... 尝试一次启动所有课程。构建产物统一放入已忽略的 bin/课程编号/ 目录。
当前仅使用 Go 标准库,不需要第三方运行依赖。详见 安装与运行教程,包含 SDK、VS Code 工具安装、依赖管理、编译、测试和调试步骤。
远程地址:http://vk-fly.com:10880/ZhuTianShuai/go_learn.git
请勿提交密码、访问令牌或个人环境配置。当前 HTTP 地址没有 HTTPS 传输加密;如服务端支持,建议改用 HTTPS 或 SSH。