Go语言进阶篇 | 青训营笔记

91 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天

一、本堂课重点内容

本堂课的重点主要是讲述了 1.锁Lock 2.线程同步WaitGroup 3.Go Module 工程实践之测试方面主要讲解了1.单元测试的概念和规则。2.Mock测试 3.基准测试 4.项目实战-组件及技术点(web框架-Gin、分层结构设计、文件操作-读文件、数据查询-索引实现快速高效查询)

二、详细知识点介绍

线程和协程

线程:用户态,轻量级线程,栈MB级别
协程:内核态,线程跑多个协程,栈KB级别

Go Module

1.通过go.mod文件管理依赖包版本
2.通过go get/go mod 指令工具管理依赖包

依赖管理的三要素

1.配置文件,描述依赖(go.mod2.中心仓库管理依赖库(Proxy)
3.本地工具(go get/mod

测试

测试种类有三种:
1.回归测试 2.集成测试 3.单元测试
从上到下,覆盖率逐层变大,成本却逐层降低。

分层结构

数据层:数据Model,外部数据的增删改查操作。
逻辑层:业务Entity,处理核心业务逻辑输出。
视图层:视图view,处理和外部的交互逻辑。

三、课后个人总结

今天的学习中,讲述的大多数是关于理论知识点的讲解。对于Go语言的并发有了一定的理解。但由于对于Go语言0基础的我来说,在自己写代码或者修改代码时会有很多的问题出现,就像基础的语法方面的错误也是经常出现的。并且学习的过程中也体会到了Go语言在速度方面的提升,性能方面都是非常的高效。这次进阶的内容中还是有很多的知识点不太理解,对代码方面也要去多看多敲,现在就是对于代码有些难以理解。还是不太习惯使用Go语言。对于理论方面的知识大多数还是可以理解的,尽力跟着老师去听吧。等到了学习框架方面可能就会比较容易上手使用和练习了。坚持跟着学习,相信在今后的敲代码阶段总会理解其代码的含义的。赶快去适应Go语言的语法吧!