这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天
本堂课笔记总结
本次课程主要知识点
- 语言进阶:从并发编程的视角带大家了解Go高性能的本质
- 依赖管理:了解Go语言依赖管理的演进路线
- 测试:从单元测试实践出发,提升大家的质量意识
- 项目实战:通过项目需求、需求拆解、逻辑设计、代码实现带领大家感受下真实的项目开发
并发VS并行
go语言在并发方面优势明显,可以一次性带动多个协程。
go通过通信共享内存,
go依赖管理演进
GOPATH——GO VENDER——GO MODULE(当前主要使用版本) GOPATH:包括bin,pkg,src,缺点是无法实现package的多版本控制 GO vender:存放包副本,解决了多个项目需要同一个package依赖的冲突问题,缺点是不同package不兼容 Go module:通过go.mod 文件管理依赖包,用来定义版本规则和管理项目依赖关系 依赖管理三要素:①配置文件,描述依赖②中心仓库管理依赖库③本地工具
测试
- 单元测试
- Mock测试
- 基准测试 测试决定质量,质量决定生命 测试:回归测试,集成测试,单元测试,从左到右测试覆盖率变大,成本变小
单元测试规则:所有测试文件以_text.go结尾;func TextXxx(*testing.T);初始化逻辑放到TexrMain中
测试评判标准:代码覆盖率
项目实战
步骤:需求设计——代码开发——测试运行 需求设计:调查用户需求,总结设计方向
分层结构:
项目小结:项目拆解方便分工合作,代码设计,最后测试运行
总结
本次课程对测试的各个环节进行了讲解,了解了什么是单元测试,Mock测试和基准测试,从项目角度对Web框架,分层结构等进行了讲解,了解了一个项目执行的大致流程。