语言简介与环境搭建

Go 是什么

Go(又称 Golang)是 Google 于 2009 年发布的开源编程语言。它将静态类型语言的安全性与动态语言的开发效率相结合,主要特点包括:

  • 编译型语言:编译为单一二进制文件,部署简单,启动无依赖。
  • 原生并发:goroutine 与 channel 提供轻量级的并发模型。
  • 语法简洁:关键字少,风格统一,由 gofmt 强制统一代码格式。
  • 工具链完备:测试、格式化、依赖管理、性能分析均内置。
  • 应用广泛:云原生基础设施(Docker、Kubernetes)、微服务、命令行工具、网络编程等领域的主流选择。

安装

官网下载页获取对应操作系统的安装包,或使用包管理器安装:

# macOS(Homebrew)
brew install go

# Windows(winget)
winget install GoLang.Go

# Linux(以 Ubuntu/Debian 为例)
sudo apt install golang-go

安装完成后验证:

go version
# go version go1.22.x darwin/amd64(示例输出)
Tip

国内网络环境下,建议配置模块代理以加速依赖下载:

go env -w GOPROXY=https://goproxy.cn,direct

编写第一个程序

创建项目目录并初始化模块:

mkdir hello && cd hello
go mod init example.com/hello

go mod init 会生成 go.mod 文件,记录模块路径与依赖信息。随后创建 main.go

package main

import "fmt"

func main() {
    fmt.Println("Hello, Go!")
}

运行与编译:

go run main.go    # 直接运行
go build          # 编译为可执行文件 hello(或 hello.exe)

程序结构解析

一个最小 Go 程序包含三个要素:

  1. 包声明 package main:每个源文件必须属于一个包。main 包是程序入口包。
  2. 导入声明 import "fmt":引入标准库的格式化输出包。
  3. 入口函数 func main():程序从这里开始执行。
Warning

Go 对格式有严格要求:

  • 左花括号 { 必须与函数声明同行,不能另起一行。
  • 未使用的导入或局部变量会导致编译错误,而非警告。

这些约束由编译器强制执行,配合 gofmt 可以保证所有 Go 代码风格一致。

常用命令

命令用途
go run编译并立即运行
go build编译生成可执行文件
go mod init初始化模块
go mod tidy整理依赖(添加缺失、移除未用)
go test运行测试
go fmt格式化代码