第 1 章:Go 语言初识与环境搭建
jerry北京市2026年4月24日Go 5 次阅读 约 8 分钟

了解 Go 的设计哲学,完成开发环境配置,编写并运行你的第一个 Go 程序。
1.1 Go 语言是什么
Go(又称 Golang)是 Google 于 2009 年开源的编程语言,由 Robert Griesemer、Rob Pike 和 Ken Thompson 设计。
核心特点:
- 编译型语言,直接编译为机器码,执行速度快
- 内置并发支持(goroutine + channel)
- 垃圾回收(GC),无需手动管理内存
- 语法简洁,关键字只有 25 个
- 强类型、静态类型
- 编译速度极快,适合大型项目
Go 的设计哲学可以用一句话概括:少即是多(Less is more)。它刻意去掉了继承、泛型(1.18 前)、异常等复杂特性,追求简单和一致性。
1.2 Go 适合做什么
| 领域 | 代表项目 |
|---|---|
| 云原生/基础设施 | Docker、Kubernetes、etcd |
| 微服务 | Go-kit、Go-micro |
| 网络编程 | 高性能 API 服务、代理服务器 |
| DevOps 工具 | Terraform、Prometheus |
| 区块链 | Ethereum (go-ethereum) |
1.3 环境搭建
安装 Go
前往官网下载:https://go.dev/dl/
# macOS (Homebrew)
brew install go
# Linux
wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
# Windows
# 下载 .msi 安装包,双击安装即可
验证安装:
go version
# 输出类似:go version go1.22.0 linux/amd64
配置环境变量
# 查看当前 Go 环境配置
go env
# 设置 Go 模块代理(国内推荐)
go env -w GOPROXY=https://goproxy.cn,direct
# 开启 Go Modules
go env -w GO111MODULE=on
关键环境变量说明:
| 变量 | 说明 |
|---|---|
GOROOT |
Go 安装目录,一般不需要手动设置 |
GOPATH |
工作区目录,默认 ~/go |
GOPROXY |
模块代理地址 |
GO111MODULE |
模块模式开关,建议设为 on |
1.4 第一个 Go 程序
创建项目:
mkdir hello && cd hello
go mod init hello
创建 main.go:
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
运行:
go run main.go
# 输出:Hello, Go!
编译为可执行文件:
go build -o hello main.go
./hello
代码解析
package main // 声明包名,main 包是程序入口
import "fmt" // 导入标准库的 fmt 包,用于格式化输出
func main() { // main 函数是程序执行的入口点
fmt.Println("Hello, Go!")
}
几个要点:
- 每个 Go 文件必须以
package声明开头 - 可执行程序必须是
package main,且包含func main() - 导入的包如果没有使用,编译会报错(Go 的严格性)
- 左花括号
{必须和函数声明在同一行
1.5 Go Modules 基础
Go Modules 是 Go 官方的依赖管理方案(Go 1.11 引入,1.16 后默认开启)。
# 初始化模块
go mod init github.com/yourname/project
# 添加依赖(自动下载)
go get github.com/gin-gonic/gin
# 整理依赖(移除未使用的)
go mod tidy
# 查看依赖
go list -m all
go.mod 文件示例:
module github.com/yourname/project
go 1.22
require (
github.com/gin-gonic/gin v1.9.1
)
1.6 常用命令速查
| 命令 | 说明 |
|---|---|
go run |
编译并运行 |
go build |
编译生成可执行文件 |
go test |
运行测试 |
go fmt |
格式化代码 |
go vet |
静态分析,检查潜在错误 |
go mod init |
初始化模块 |
go mod tidy |
整理依赖 |
go get |
下载/更新依赖 |
go install |
编译并安装到 $GOPATH/bin |
go doc |
查看文档 |
1.7 推荐的编辑器配置
- VS Code + Go 扩展(官方推荐)
- GoLand(JetBrains 出品,功能最全)
- Vim/Neovim + gopls
VS Code 推荐配置:
{
"go.useLanguageServer": true,
"go.lintTool": "golangci-lint",
"go.formatTool": "goimports",
"editor.formatOnSave": true
}
练习
- 安装 Go 并验证版本
- 创建一个模块,编写程序输出你的名字
- 使用
go build编译,观察生成的可执行文件大小 - 尝试导入一个包但不使用它,观察编译器的报错信息
评论
登录 后发表评论
暂无评论