# Golang 入门程序
# 一、Golang 环境搭建(Mac)
1. 下载 Golang
官网:https://golang.org/
2. 配置环境变量
go env -w GOPROXY="https://goproxy.cn"
go env -w GOSUMDB="sum.golang.google.cn"
vim ~/.zshrc
export GO111MODULE=on
export GOPROXY=https://goproxy.cn
export GOROOT="/usr/local/go"
export GOPATH="/Users/$USER/go"
export GOBIN="$GOROOT/bin"
export PATH="$PATH:$GOBIN"
source ~/.zshrc
- $USER:需要改为用户名
- Mac 在 Catalina 版本后默认的 Shell 为
zsh
, 配置文件为~/.zshrc
。如果你使用的是bash
, 对应的配置文件为~/.bashrc
。 查看自己用的是哪个 shell, 执行echo $SHELL
即可
3. 检查结果
go version
go env
# 二、Hello World
本篇均使用 GO MODULE 而不使用 GO PATH。
1. 新建一个空目录并进入该目录
mkdir goHelloWorld
cd goHelloWorld
2. 执行 go mod init 初始化 go module
$ go mod init goHelloWorld
go: creating new go.mod: module goHelloWorld
3. 编写 main.go 文件
vim main.go
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello World!")
}
4. 编译 Go 项目
go build .
5. 执行 Go 项目
可以看到编译产物 goHelloWorld:
$ ls -l
total 3976
-rw-r--r-- 1 bytedance staff 29 7 19 16:54 go.mod
-rwxr-xr-x 1 bytedance staff 2023840 7 19 16:56 goHelloWorld
-rw-r--r-- 1 bytedance staff 78 7 19 16:55 main.go
执行:
$ ./goHelloWorld
Hello World!
# 三、Hello World 说明
# 1. package
package main
- 在同一个包下面的文件属于同一个工程文件,不用
import
包,可以直接使用 - 在同一个包下面的所有文件的
package
名,都是一样的 - 在同一个包下面的文件
package
名都建议设为是该目录名,但也可以不是
# 2. import
import (
"fmt"
)
上面代码告诉 Go 编译器这个程序需要使用 fmt
包的函数,fmt 包实现了格式化 IO(输入/输出)的函数。
可以是相对路径也可以是绝对路径,推荐使用绝对路径(起始于工程根目录)。
# 3. main
func main() {
fmt.Println("Hello World!")
}
main() 程序入口,有且只有一个,且必须位于 main 包下。
← Golang 入门简介 go 命令 →