Go初级入门
入口函数
- Go是以
“包”为管理单位的,每个 Go 源文件必须先声明所属的包,通过package声明 main包是Go语言程序的入口包- 一个Go语言程序只能有一个
main包 - 如果一个程序没有
main包,那么编译时将会出错,无法生成可执行文件 main函数,Go语言程序的入口函数,也即程序启动后运行的第一个函数。main函数只能声明在main包中,不能声明在其他包中,并且,一个main包中也必须有且仅有一个main函数
配置国内goproxy
七牛云配置:
shell
go env -w GOPROXY=https://goproxy.cn // Windows
export GOPROXY=https://goproxy.cn // macOS 或 Linuxgo mod init 命令
shell
go mod init [module-path]go run 和 go build 命令
go run命令将编译和执行指令合二为一,会在编译之后立即执行Go语言程序,但是不会生成可执行文件。一般在测试时使用go build命令用来编译程序,它可以将程序代码和相关依赖编译成一个可执行文件,上线时只上线可执行文件就可以了
go install 命令
- 用于编译并安装 Go 包和可执行程序到你的 GOPATH 或 GOROOT 的 bin 目录下。
基本语法:
shell
go install [build flags] [path-to-package]...- 安装当前目录下的可执行文件:
shell
go install .- 安装特定的包或可执行文件:
shell
go install github.com/user/repo/cmd/app- 安装所有本地模块的可执行文件:
shell
go install ./...一旦你使用 go install 成功安装了一个可执行文件,你可以在任何包含 $GOPATH/bin 或 $GOROOT/bin 路径的 shell 中运行它,因为这些目录会被添加到你的系统路径中。
go mod tidy 命令
go mod tidy 命令,这是Go模块管理工具的一部分,用于维护和更新项目中的依赖关系。主要功能包括:
- 添加缺失的依赖
- 移除未使用的依赖
- 同步依赖
- 更新依赖版本
- 准备构建环境
空接口类型
Go程序可以通过接口(interface)机制,巧妙地绕过静态编程语言的限制,并借此获得接受多种不同类型输入的能力。
Go语言中的接口由一系列方法构成,并且每个接口就是一种类型。一个空接口就是一个空集合,这意味着任何类型都可以成为一个空接口,也就是说任何类型的值都可以传递给函数作为参数。
可变参数
在Go语言中,可变参数必须是可变参数函数的最后一个参数。
======【相关网站】======
Go官网
Go语言中文网
Go学习文档
Go 语言中文开源图书、资料或文档
https://books.studygolang.com/
======【Go框架】======
Gin
Iris
Chi
Echo
GoFrame
hugo
gorm
beego
Gorilla
======【扩展书籍】======
《Go语言实战》(Go in Practice)
《Go Web编程》(Go Web Programming)
《Go语言实战》(Go in Action)
======【Go实用工具】======
Go 国内代理
Go Playground
在浏览器上运行Go语言
