133 lines
5.7 KiB
Markdown
133 lines
5.7 KiB
Markdown
# Go 语言学习指南实现计划
|
||
|
||
- [x] 1. 创建项目基础结构和配置文件
|
||
- 创建根目录结构和 go.mod 文件
|
||
- 编写项目主 README.md 文件,包含完整的学习指南和目录
|
||
- 创建所有子目录的结构
|
||
- _需求: 8.1, 8.2_
|
||
|
||
- [ ] 2. 实现基础语法学习模块
|
||
- [x] 2.1 创建 Hello World 和变量示例
|
||
- 编写 01-basics/01-hello-world.go,展示基本程序结构
|
||
- 编写 01-basics/02-variables.go,演示变量声明和初始化的各种方式
|
||
- 包含详细的中文注释说明每种语法的用法
|
||
- _需求: 1.1, 1.2, 1.3_
|
||
|
||
- [x] 2.2 创建常量和数据类型示例
|
||
- 编写 01-basics/03-constants.go,展示常量定义和使用
|
||
- 编写 01-basics/04-data-types.go,演示所有基本数据类型
|
||
- 编写 01-basics/05-operators.go,展示各种运算符的使用
|
||
- _需求: 1.1, 1.2, 1.3_
|
||
|
||
- [ ] 3. 实现控制流程学习模块
|
||
- [x] 3.1 创建条件语句示例
|
||
- 编写 02-control-flow/01-if-else.go,展示条件判断的各种形式
|
||
- 编写 02-control-flow/02-switch.go,演示 switch 语句的不同用法
|
||
- 包含多个实际应用场景的示例
|
||
- _需求: 2.1, 2.2, 2.3_
|
||
|
||
- [x] 3.2 创建循环结构示例
|
||
- 编写 02-control-flow/03-for-loops.go,展示 for 循环的各种形式
|
||
- 编写 02-control-flow/04-range.go,演示 range 关键字的使用
|
||
- 提供不同条件下的执行路径示例
|
||
- _需求: 2.1, 2.2, 2.3_
|
||
|
||
- [ ] 4. 实现函数和方法学习模块
|
||
- [x] 4.1 创建基础函数示例
|
||
- 编写 03-functions/01-basic-functions.go,展示函数定义和调用
|
||
- 编写 03-functions/02-multiple-returns.go,演示多返回值函数
|
||
- 编写 03-functions/03-variadic-functions.go,展示可变参数函数
|
||
- _需求: 3.1, 3.2, 3.3_
|
||
|
||
- [x] 4.2 创建高级函数特性示例
|
||
- 编写 03-functions/04-closures.go,演示闭包的概念和使用
|
||
- 编写 03-functions/05-methods.go,展示结构体方法的定义和使用
|
||
- 提供变量作用域的详细说明和示例
|
||
- _需求: 3.1, 3.2, 3.3_
|
||
|
||
- [ ] 5. 实现数据结构学习模块
|
||
- [x] 5.1 创建基本数据结构示例
|
||
- 编写 04-data-structures/01-arrays.go,展示数组的创建和操作
|
||
- 编写 04-data-structures/02-slices.go,演示切片的各种操作方法
|
||
- 编写 04-data-structures/03-maps.go,展示映射的增删改查操作
|
||
- _需求: 4.1, 4.2, 4.3_
|
||
|
||
- [x] 5.2 创建复合数据结构示例
|
||
- 编写 04-data-structures/04-structs.go,展示结构体的定义和使用
|
||
- 编写 04-data-structures/05-pointers.go,演示指针的概念和操作
|
||
- 提供不同数据结构的使用场景建议
|
||
- _需求: 4.1, 4.2, 4.3_
|
||
|
||
- [ ] 6. 实现接口学习模块
|
||
- [ ] 6.1 创建接口基础示例
|
||
- 编写 05-interfaces/01-basic-interfaces.go,展示接口的定义和实现
|
||
- 编写 05-interfaces/02-empty-interface.go,演示空接口的使用
|
||
- 编写 05-interfaces/03-type-assertions.go,展示类型断言的使用
|
||
- _需求: 3.2_
|
||
|
||
- [ ] 7. 实现并发编程学习模块
|
||
- [ ] 7.1 创建 Goroutine 和 Channel 示例
|
||
- 编写 06-concurrency/01-goroutines.go,展示 goroutine 的基础使用
|
||
- 编写 06-concurrency/02-channels.go,演示 channel 的各种操作
|
||
- 编写 06-concurrency/03-select.go,展示 select 语句的使用
|
||
- _需求: 5.1, 5.2, 5.3_
|
||
|
||
- [ ] 7.2 创建同步和高级并发示例
|
||
- 编写 06-concurrency/04-sync-package.go,展示 sync 包的使用方法
|
||
- 编写 06-concurrency/05-worker-pools.go,演示工作池模式
|
||
- 提供避免竞态条件的最佳实践示例
|
||
- _需求: 5.1, 5.2, 5.3_
|
||
|
||
- [ ] 8. 实现错误处理学习模块
|
||
- [ ] 8.1 创建错误处理示例
|
||
- 编写 07-error-handling/01-basic-errors.go,展示基本错误处理
|
||
- 编写 07-error-handling/02-custom-errors.go,演示自定义错误类型
|
||
- 编写 07-error-handling/03-panic-recover.go,展示 panic 和 recover 的使用
|
||
- _需求: 6.1, 6.2, 6.3_
|
||
|
||
- [ ] 9. 实现包管理学习模块
|
||
- [ ] 9.1 创建包管理示例
|
||
- 编写 08-packages/01-creating-packages.go,展示包的创建方法
|
||
- 编写 08-packages/02-importing-packages.go,演示包的导入和使用
|
||
- 创建 08-packages/utils/helper.go,提供实际的包示例
|
||
- _需求: 7.1, 7.2, 7.3_
|
||
|
||
- [ ] 10. 实现高级特性学习模块
|
||
- [ ] 10.1 创建高级特性示例
|
||
- 编写 09-advanced/01-reflection.go,展示反射的基本使用
|
||
- 编写 09-advanced/02-generics.go,演示泛型的语法和应用
|
||
- 编写 09-advanced/03-context.go,展示 context 包的使用
|
||
- 编写 09-advanced/04-testing.go,演示单元测试的编写方法
|
||
- _需求: 各个高级特性需求_
|
||
|
||
- [ ] 11. 创建实践项目模块
|
||
- [ ] 11.1 实现计算器项目
|
||
- 创建 10-projects/01-calculator/ 目录结构
|
||
- 编写简单计算器的完整实现,包含基本四则运算
|
||
- 提供项目结构说明和运行指导
|
||
- _需求: 综合应用各种语法特性_
|
||
|
||
- [ ] 11.2 实现待办事项列表项目
|
||
- 创建 10-projects/02-todo-list/ 目录结构
|
||
- 编写命令行待办事项管理程序
|
||
- 包含数据持久化和用户交互功能
|
||
- _需求: 综合应用数据结构和文件操作_
|
||
|
||
- [ ] 11.3 实现简单 Web 服务器项目
|
||
- 创建 10-projects/03-web-server/ 目录结构
|
||
- 编写基础的 HTTP 服务器实现
|
||
- 包含路由处理和 JSON API 示例
|
||
- _需求: 综合应用并发和网络编程_
|
||
|
||
- [ ] 12. 完善文档和测试
|
||
- [ ] 12.1 添加学习指导文档
|
||
- 在每个目录下创建 README.md 文件,说明该模块的学习重点
|
||
- 添加常见问题解答和学习建议
|
||
- 提供练习题和扩展阅读材料
|
||
- _需求: 8.1, 8.2, 8.3_
|
||
|
||
- [ ] 12.2 验证所有代码示例
|
||
- 确保所有 .go 文件都能成功编译和运行
|
||
- 验证输出结果的正确性
|
||
- 检查注释的完整性和准确性
|
||
- _需求: 所有模块的验收标准_ |