0.环境配置以及简单helloGo实现
0.1 Go环境配置
1.IDE选择
IDE需知:vscode与goland,推荐使用vscode,vscode免费,goland收费(学生可以使用教育邮箱注册白嫖)。
vscode地址:https://code.visualstudio.com/
goland地址:https://blog.jetbrains.com/go/
2.go安装包
下载地址:https://studygolang.com/dl
可根据自己不同系统版本进行选择。
3.配置
- 不管是哪个系统,需要配置go安装环境到path环境变量里面。
- goland只需要选择go对应的sdk配置即可,也就是把go安装的路径添加进去,使用安装的go环境进行编译,不需要安装任何额外插件。
- vscode需要安装额外插件,在插件市场里面直接搜索go,随后进行安装即可,在安装的时候容易出现下载失败问题,此时需要更换为国内源,如下设置:
要求go版本>=1.13。
windows设置:
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
MacOS or Linux
export GO111MODULE=on
export GOPROXY=https://goproxy.cn
0.2 Go语言特性
- 自动垃圾回收
- 更丰富的内置类型
- 函数多返回值
- 错误处理
- 匿名函数和闭包
- 类型和接口
- 并发编程
- 反射
- 语言交互性
0.3 语言结构
- 包声明
- 引入包
- 函数
- 变量
- 语句 & 表达式
- 注释
package main
import "fmt"
func main() {
/* Always Hello, World! */
fmt.Println("Hello, World!")
}
解释:
- package main定义了包名。必须在源文件中非注释的第一行指明这个文件属于哪个包。package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包。
- import "fmt"告诉编译器程序运行需要用fmt包。
- func main() 是程序开始执行的函数,main 函数是每一个可执行程序所必须包含的,一般来说都是在启动后第一个执行的函数(如果有 init() 函数则会先执行该函数)。
- {}中"{"不可以单独放一行。
- /…/ 是注释,在程序执行时将被忽略。//单行注释, /* … */ 多行注释也叫块注释,不可以嵌套使用,一般用于包的文档描述或注释成块的代码片段。
- fmt.Println(…) 将字符串输出到控制台,并在最后自动增加换行字符 \n。用 fmt.Print(“hello, world\n”) 可以得到相同的结果。
0.3.1 go项目目录结构
目录规范:
- 在 goPath :E:\code\go 路径下开发自己的项目
- 须创建src目录,并在下面创建自己的项目
0.3.2 运行方式
- 编译生成exe文件,在终端运行
go go build hello.go
- 直接go run
0.3.3vscode如何编译运行go语言
0.4 推荐 go mod 使用
0.4.1 推荐理由
告别gopath模式,咱想在哪儿创建就在哪儿创建
参考原文:
告别GOPATH,快速使用 go mod(Golang包管理工具)
0.4.2 mod基本操作
1.初始化一个moudle,模块名为你项目名
```text
go mod init 模块名
```
2.下载modules到本地cache
> 目前所有模块版本数据均缓存在 `$GOPATH/pkg/mod`和 `$GOPATH/pkg/sum` 下
```text
go mod download
```
3.编辑go.mod文件 选项有`-json`、`-require`和`-exclude`,可以使用帮助go help mod edit
```text
go mod edit
```
4.以文本模式打印模块需求图
```text
go mod graph
```
5.删除错误或者不使用的modules
```text
go mod tidy
```
6.生成vendor目录
```text
go mod vendor
```
7.验证依赖是否正确
```text
go mod verify
```
8.查找依赖
```text
go mod why
```