go语言工程实践小结|青训营笔记

52 阅读1分钟

首先是一些概念的学习,协程是由go语言创建的轻量级的线程。go语言同时可以创建上万个协程这也是go语言的高并发所在。在一个函数前面加go表示协程。协程之间的通信,go语言提倡通过通信共享内存,通过通道,即channel实现。我们可以通过make创建一个channel,语句为:make(chan 元素类型 ,[缓冲大小] )。channel可以分为无缓冲通道和有缓冲通道,其中无缓冲通道也被称为同步通道,语句make (chan int ,2)意思为建立一个int型的缓冲大小为2的通道,若为无缓冲通道则int后的2不要,其他不变,代表建立一个int型的无缓冲通道。 之后老师通过一段代码的例子进行讲解,我对协程的使用更加清楚,以及例子里面知识点的应用我对它们印象更加深刻。之后的内容是go语言的依赖管理。go语言的依赖管理到目前为止经历了三个阶段从gopath到govendor最后是go module。gopath是go语言支持的一个环境变量,该目录下有bin,pkg,src,相对于其他两个,我对gopath更为熟悉和了解,因为在下载go语言时遇到并了解过。之后便是go vendor,每个项目都有自己的vendor目录,这样可以很好的避免项目都放在一个path下产生冲突,go module是go语言官方推出的依赖管理系统,解决了 go vendor的弊端,通过go.mod文件管理依赖包版本,通过go get或go mod指令工具管理依赖包。