Skip to content

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 或 Linux

go 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官网

https://go.dev/

Go语言中文网

https://studygolang.com/

Go学习文档

https://www.topgoer.com/

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语言

https://go.dev/play/

最近更新