Go-lang
概述
Go
是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。Go
是从2007年末由Robert Griesemer
,Rob Pike
,Ken Thompson
主持开发,后来还加入了Ian Lance Taylor
,Russ Cox
等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。
现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。
- Go 语言特色
- 简洁、快速、安全
- 并行、有趣、开源
- 内存管理、数组安全、编译迅速
- Go 语言用途
- Go 语言被设计成一门应用于搭载
Web
服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。- 对于高性能分布式系统领域而言,
Go
语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。
环境安装
- 支持的操作系统
Go 语言支持以下系统:
- Linux
- Linux
- FreeBSD
- Mac OS X
(也称为
Darwin
)
- Windows
- 安装包
安装包下载地址为:https://go.dev/dl/。
如果打不开可以使用这个镜像地址: https://golang.google.cn/dl/。
- 各个系统对应的包名:
| 操作系统 | 包名 |
| Windows | go1.4.windows-amd64.msi |
| Linux | go1.4.linux-amd64.tar.gz |
| Mac | go1.4.darwin-amd64-osx10.8.pkg |
| FreeBSD | go1.4.freebsd-amd64.tar.gz |
基于 UNIX/Linux/Mac OS X, 和 FreeBSD 的安装
以下介绍了在UNIX/Linux/Mac OS X, 和 FreeBSD系统下使用源码安装方法:
亦可参见 : https://www.runoob.com/go/go-environment.html
- 1、下载二进制包:go1.4.linux-amd64.tar.gz。
- 2、将下载的二进制包解压至
/usr/local
目录。
tar -C /usr/local -xzf go1.4.linux-amd64.tar.gz
- 3、将 /usr/local/go/bin 目录添加至 PATH 环境变量:
export PATH=$PATH:/usr/local/go/bin
以上只能暂时添加 PATH
,关闭终端后下次再登录就没有了。
我们可以编辑 ~/.bash_profile
或者 /etc/profile
,并将以下命令添加该文件的末尾,这样就永久生效了:
export PATH=$PATH:/usr/local/go/bin
添加后需要执行:
source ~/.bash_profile
或
source /etc/profile
注意:
MAC
系统下你可以使用.pkg
结尾的安装包直接双击来完成安装,安装目录在/usr/local/go/
下。
基于 Windows
系统的安装
- 选择对应版本,选择windows-amd64.zip下载后解压到本地目录
https://golang.google.cn/dl/go1.23.3.windows-amd64.zip [√]
https://golang.google.cn/dl/go1.23.3.linux-amd64.tar.gz
https://golang.google.cn/dl/go1.23.3.src.tar.gz
- 创建一个新文件夹,在里面新建
bin
、pkg
、src
3个文件夹 : 此步骤可忽略
可以是任意位置,用来存放go项目。
假定其目录为:
D:\Workspace\CodeRepositories\GoHelloWorld
D:\Workspace\CodeRepositories\GoHelloWorld/bin/pkg/src
- 配置系统变量
GOROOT
在系统变量下选择新建,添加一个
GOROOT
的变量,变量值为当前go
的安装目录
GOROOT
D:\Program\Go-Lang\go1.23.3.windows-amd64\go
GOPATH
: 当前工作目录,可以随时按需修改
GOPATH
D:\Workspace\CodeRepositories\GoHelloWorld
Path
: 环境变量添加2个值
%GOROOT%\bin
%GOPATH%\bin
- 验证
go env
如果出现这样就配置成功了
- 打开CMD终端,输入以下配置 (可选步骤)
go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.cn,direct
- 查看版本
> go version
go version go1.23.3 windows/amd64
FAQ
GOROOT
与GOPATH
路径的区别?
-
GOROOT
和GOPATH
是Go语言开发环境中的两个重要路径,它们在功能和使用场景上有明显的区别。 -
GOROOT
GOROOT是Go语言的安装目录,包含了Go的编译器和标准库。
GOROOT在绝大多数情况下都不需要修改,因为它主要存储Go语言的安装文件,如编译器和标准库。
GOROOT目录下通常包含bin、doc和src子目录,其中bin目录包含go和gofmt等工具,类似于Java的JDK
目录。
- GOPATH
GOPATH
是开发时的工作目录,用于存放项目代码、编译后的二进制文件和第三方依赖包。
GOPATH
可以设置多个,但第一个GOPATH会被默认使用
go get
命令下载的包会存放在第一个GOPATH的src目录下,而go install命令会在找到包的GOPATH下的bin目录生成可执行文件。
- 设置和使用
在开发过程中,设置好
GOROOT
和GOPATH
对执行编译命令至关重要。
GOROOT
通常不需要修改,而GOPATH
则需要根据项目需求进行设置。
Go
语言在寻找包时会首先在GOROOT
的src目录中搜索,如果找不到才会在GOPATH
的src目录中搜索。
X 参考文献
- Go语言教程 - 菜鸟教程