Go并发编程实战 第一章 初识Go语言

第一章基本上就是讲解Go的历史、如何安装GO、Go的基本概念和一些常用的命令。由于学习Go也有一段时间了,可以看出书中有一些概念其实不完全正确的,特别是gopath部分。
大概知识点如下:

  1. 工作区的概念:早期Go确实建议把所有的工程代码放在GOPATH环境变量下,这个目录是你自己设置的,可以任意目录。但是,由于不能版本控制同一个工程代码的问题,所以后来,gopath概念渐渐被废弃,启用了另外一种模式GOmod,go版本1.11就开始默认启用了,他把每一个项目当成一个模块,从而解决前面说的无法版本控制的问题,因为每多一个项目版本出来,就会在同样的层级目录下生成不同的代码,比如:
|-- ─ Go_demo   //项目
│   |-- ─ v1   //版本1代码
│   |-- ─ v2   //版本2代码

如果还不理解可以参考其他资料,另外其实刚开始学没必要纠结gopath这个概念,没啥用,对了如果是使用JetBrains家的IDE,需要在设置中开启go模块集成,不然到时候引用别的模块的时候会出现问题,其他也没啥了。

2. 和gopath相同的另外一个概念就是GOROOT,不过这个很简单,就是:Go的安装路径。同样需要把他弄成环境变量,这个教程自行百度。
3. 还有一个相关的就是GOPROXY的设置,这个可以理解为go下载第三方包时候的一个代理网址,由于国内不能正常访问的原因,所以这个需要设置一下:GOPROXY=https://goproxy.cn,direct
4. go本身提供了一些命令,方便用于构建、测试、调优等等。最长用到的就是:

  1. go run:运行代码
  2. go build:构建二进制可执行文件(.exe
  3. go get: 下载第三方包
  4. go install:安装第三方包(这个和get有点相似,后面写一下有啥区别会贴个链接过来,这里打个tag)
  5. go test: 用于测试
  6. go mod init: 初始化工程模块(这个这本书其实没有讲到,这里提一下吧,确实很常用)
  7. 除了上述常用的命令之外,go还提供了自身的性能调优工具:pproftrace(很有用,但是我目前用的少,打个tag,看看这本书后面有没有讲到,没有我后面自己找一些资料分析下,现在都喜欢动不动搞性能调优。。。。)

到这里本书第一章就讲完了,主要抓住一个脉络就是Go是什么以及对他有个大概认识就行。同样,我这里也是尽可能简化书中一些概念记录一些有用的点,不会面面俱到的。

posted @ 2023-07-13 00:44  CodeWater  阅读(14)  评论(0编辑  收藏  举报