这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天
一、Go语言的安装(Windows)
访问 go.dev/ ,点击 Download ,下载对应平台安装包,点击后如图所示
依据对应的系统选择即可,笔者选择的是Windows版本。PS: 这里在版本选择和下载时可能会产生一些问题,见"一些问题"中的说明。
windows下的Go安装只要根据实际设定安装路径,其他狂点下一步就行。
二、配置 Go 语言开发环境
可以选择安装 VS Code , 或者 Goland ,对于 VS Code,需要安装 Go 插件
笔者已有vscode,因此选择在其中安装Go插件
添加goproxy代理,Goproxy.cn
C:\> $env:GO111MODULE = "on"
C:\> $env:GOPROXY = "https://goproxy.cn"
#-------下面这个也可以-------
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn
安装vscode中go语言辅助工具 PS:一般打开go项目vscode右下角会有提示,直接install就行
go install github.com/go-delve/delve/cmd/dlv@latest
go install honnef.co/go/tools/cmd/staticcheck@latest
go install golang.org/x/tools/gopls@latest
三、下载示例代码
- 安装 git,安装教程
- 打开 github.com/wangkechun/… 克隆课程示例项目
- 进入课程示例项目代码目录,运行
go run example/01-hello/main.go如果正确输出 hello world,则说明环境配置正确
四、项目实践要点
-
猜谜游戏:
rand.Intn()来生成随机数,用时间戳来更新rand的种子数- 读取一行:
bufio.NewReader、reader.ReadString;去掉换行符:strings.TrimSuffix;转换成数字:strconv.Atoi - for循环的应用
-
在线词典
- 抓包and代码生成,代码生成网站
创建请求->设置请求头->发起请求->读取响应 - 生成request body->解析response body,代码生成网站json2go
- 打印想要的结果
- 抓包and代码生成,代码生成网站
-
socks5代理服务器
- socks5是明文传输
- socks5原理
- TCP echo server->auth->请求阶段->relay阶段
- context机制
一些问题
- Go语言安装版本选择
根据该文章的建议,Go语言安装版本依据学习环境还是生产环境而定。
学习环境:建议采用最新版本,Go 语言团队世界大厂傍身,Google自家产品。发布的版本质量较高,很少有重大bug出现。
生产环境:建议采用次新版,即最新版本的上一个版本。比如,当前最新版本是Go 1.19,那么项目可以采用Go 1.18版本。
因为目前笔者主要是学习Go语言为主,选择安装最新(1.19.5)版本。 - Go下载链接打不开
方法1:使用代理
方法2:可以改为访问 studygolang.com/dl 下载安装 - github链接打不开 可以使用代理
- 安装完Go后,vscode的cmd终端里的相关环境变量不生效
-
最简单的方法:重启计算机;
-
如果不想重启机器,可以先关闭 vscode,然后打开一个新的命令行窗口,输入
code并回车。 此时会打开一个新的 vscode,在此 vscode 的终端可以看到环境变量已经刷新了。
-