这是我参与「第五届青训营 」笔记创作活动的第3天。今天第一节课我了解到了协程这一概念以及go高效运行的原理--充分发挥多核优势,当然也是老样子,通过跟着老师的实际代码来加深理解,毕竟概念很抽象,比如go关键字打开协程加深了理解。了解了go语言是通过通信来实现共享内存而不是通过共享内存来通信,在这其中学习到了有缓冲通道和无缓冲通道,通过三协程打印0到9这10个数的平方加深了理解。然后是保证并发安全的lock,通过对比体现了lock的重要性,也学习到了go语言中实验阻塞的waitgroup方法以及其具体的用法。然后老师介绍了go依赖管理,分别介绍了gopath,govendor和现在的gomodule,介绍了每个方法的优略点以及为何一步步演化到如今的gomodule,重点介绍了gomodule中的三要素--go.mod文件,依赖库管理仓库proxy和本地工具go get/mod。第二节课首先通过一些事故让我们认识到测试的重要性,介绍了测试的三种类型--回归测试、集成测试和单元测试,从前到后覆盖率变大,成本变低,每种测试的侧重点也不同,了解了单元测试的大致流程,单元测试的规则,也通过例子加深了理解,其中涉及到assert包的运用、覆盖率的查看和单元测试需要的一些依赖,在测试需要依赖时可以使用的mock打桩包。然后是基准测试的规定和例子。最后是项目实践,了解了一个项目从无到有的大致流程和设计一个项目所需的准备工作--ER图、分层结构。总而言之,今天这一节课真的学到了很多,希望自己继续努力坚持。