Go语言中文文档
前景
1. Go语言概述
Go语言(又称Golang)是由Google开发的一种静态强类型、编译型、并发型编程语言。它于2009年正式发布,由计算机科学领域的传奇人物Rob Pike、Ken Thompson和Robert Griesemer共同设计。
1.1 设计初衷
-
解决大型系统开发的痛点:Google需要一种能高效处理大规模分布式系统的语言
-
平衡开发效率与执行性能:兼具脚本语言的开发速度和编译型语言的执行效率
-
简化并发编程:原生支持轻量级线程(goroutine)和通信顺序进程(CSP)模型
1.2 简单易学
- 语法简洁
- 代码风格统一
- 开发效率高
1.3 强大的并发模型
- Goroutine:轻量级线程(2KB初始栈,可动态扩展
- Channel:类型安全的线程间通信管道
- Select:多路复用监听机制
1.4 使用 Go 的公司
-
Facebook https://github.com/facebookgo
-
腾讯
-
百度
-
字节跳动
-
360开源日志系统 https://github.com/Qihoo360/poseidon
1.5 Go 适合做什么
- 服务端开发
- 分布式系统、微服务
- 网络编程
- 区块链开发
- 云计算、云平台
- 云原生基础设施
- DevOps工具链
- ….
2. 为什么要学习Golang?Go的优势和职业前景?
3. Go 语言学习线路图
请移步文章Go 语言学习线路图
开发环境
1. Go 的安装
1.1 下载地址
Go官网下载地址 https://go.dev/dl/ Google Golang 下载地址 https://golang.google.cn/learn/ Golang 中文社区下载:https://studygolang.com/dl
1.2 Windows 安装
双击下载的文件,直接点击下一步安装即可 要注意记住安装的路径,之后要配置环境变量
1.3 Mac 安装
可以使用 brew install go 但不是很推荐
建议下载安装包,直接点击安装包进行安装,默认会安装到/usr/local/go 文件夹下
1.4 linux 安装
可以将刚才下载的安装包上传到服务器,或者在服务器直接下载
wget https://studygolang.com/dl/golang/go1.24.0.linux-amd64.tar.gz
注意 wget 是 Centos 下载文件的命令,其他 linux 操作系统请自行搜索下载方式
下载地址是Go官网下载页面,下载安装包的时,复制链接即可
下载完成后进行安装
cd /usr/local/
tar -xzvf go1.24.0.linux-amd64.tar.gz
这样子就下载安装完成了,记住当前的安装目录:/usr/local/go
2. 配置 GOPATH
GOPATH是一个环境变量,用来表明你写的 go 项目和依赖的存放路径 项目下载的全局依赖都会存放在 GOPATH/src目录下
2.1 Windows
找到桌面的电脑图标 我的电脑->属性->高级系统设置-环境变量 在系统变量下添加:
变量:GOPATH 值:自己设置一个
在系统变量中找到【变量】为 Path,编辑,添加 go 的安装目录和 GOPATH 的目录
2.2 Mac 和 Linux
vi /etc/profile
添加以下代码
export GOROOT=/usr/local/go ##Golang安装目录
export PATH=$GOROOT/bin:$PATH
export GOPATH=/home/go ##Golang项目目录
然后刷新环境变量
source /etc/profile
2.3 验证是否安装成功
打开终端
go version
输出版本,即为成功,如果输出 go 命令不存在等字眼,大概是环境变量没有配置正确
3. 编辑器
目前最流行的编辑器:
- Goland(https://www.jetbrains.com/go/)(收费,需激活码激活)、
- VsCode(https://code.visualstudio.com/)(免费)
5. Hello World
现在,开始你的 hello world 吧 在 GOPAHTH /src 下新建一个项目,在项目下新建一个 main.go
package main // 包名,main 包表明该文件为程序的入口文件
import "fmt" // 导入依赖,
func main(){ // main函数,是程序执行的入口
fmt.Println("Hello World!") // 打印 Hello World!
}
使用 go run 可以直接运行
使用 go build 进行编译打包成二进制文件,双击可以直接运行
还可以使用-o参数来指定编译后可执行文件的名字 go build -o hw.exe