go 安装
前言
Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。
罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊(Ken Thompson)于2007年9月开始设计Go,稍后Ian Lance Taylor、Russ Cox加入项目。Go是基于Inferno操作系统所开发的。
Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。在2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。 目前,Go每半年发布一个二级版本(即从a.x升级到a.y)
Go的语法接近C语言,但对于变量的声明有所不同。Go支持垃圾回收功能。Go的并行模型是以东尼·霍尔的通信顺序进程(CSP)为基础,采取类似模型的其他语言包括Occam和Limbo,但它也具有Pi运算的特征,比如通道传输。在1.8版本中开放插件(Plugin)的支持,这意味着现在能从Go中动态加载部分函数。
与C++相比,Go并不包括如枚举、异常处理、继承、泛型、断言、虚函数等功能,但增加了 切片(Slice) 型、并发、管道、垃圾回收、接口(Interface)等特性的语言级支持。Go 2.0版本将支持泛型,对于断言的存在,则持负面态度,同时也为自己不提供类型继承来辩护。
不同于Java,Go内嵌了关联数组(也称为哈希表(Hashes)或字典(Dictionaries)),就像字符串类型一样。
安装和设置
Go有多种安装方式,这里我们介绍三种最常见的安装方式,你可以选择自己喜欢的。
- Go源码安装:这是一种标准的软件安装方式。对于经常使用类Unix系统的用户,尤其对于开发者来说,从源码安装可以自己定制。
- Go标准包安装:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合快速安装,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了。推荐这种方式.
- 第三方工具安装:目前有很多方便的第三方软件包工具,例如Ubuntu的apt-get和wget、Mac的homebrew等。这种安装方式适合那些熟悉相应系统的用户。 最后,如果你想在同一个系统中安装多个版本的Go,你可以参考第三方工具GVM,这是目前在这方面做得最好的工具,除非你知道怎么处理。
Go 语言支持以下系统: Linux FreeBSD Mac OS X(也称为 Darwin)
Windows 安装包下载地址为:https://go.dev/dl/
各个系统对应的包名:
File name | Kind | OS | Arch | Size | SHA256 Checksum |
---|---|---|---|---|---|
go1.20.src.tar.gz | Source | 25MB | 3a29ff0421beaf6329292b8a46311c9fbf06c800077ceddef5fb7f8d5b1ace33 | ||
go1.20.darwin-amd64.tar.gz | Archive | macOS | x86-64 | 95MB | 777025500f62d14bb5a4923072cd97431887961d24de08433a60c2fe1120531d |
go1.20.darwin-amd64.pkg | Installer | macOS | x86-64 | 96MB | 650748a8785ececab2161abd3b5d7b036c021111c6dbaaaee982f28a1b699eb4 |
go1.20.darwin-arm64.tar.gz | Archive | macOS | ARM64 | 92MB | 32864d6fe888714ca7b421b5997269c7f6349d7e2675c3a399133e521787608b |
go1.20.darwin-arm64.pkg | Installer | macOS | ARM64 | 92MB | ca64e724e5a5a60f16a1201d7db2b626a5653c9ac93a3567e8676903c97fd1ef |
go1.20.linux-386.tar.gz | Archive | Linux | x86 | 96MB | 1420582fb43a15dbe94760fdd92171315414c4afc21ffe9d3b5875f9386ebe53 |
go1.20.linux-amd64.tar.gz | Archive | Linux | x86-64 | 95MB | 5a9ebcc65c1cce56e0d2dc616aff4c4cedcfbda8cc6f0288cc08cda3b18dcbf1 |
go1.20.linux-arm64.tar.gz | Archive | Linux | ARM64 | 91MB | 17700b6e5108e2a2c3b1a43cd865d3f9c66b7f1c5f0cec26d3672cc131cc0994 |
go1.20.linux-armv6l.tar.gz | Archive | Linux | ARMv6 | 93MB | ee8550213c62812f90dbfd3d098195adedd450379fd4d3bb2c85607fd5a2d283 |
go1.20.windows-386.zip | Archive | Windows | x86 | 109MB | 9c303e312391eb04b4a1bab9b93b0839e05313068293c26b3a65ec6d24be99ce |
go1.20.windows-386.msi | Installer | Windows | x86 | 95MB | 37d7279cd68817c416661280c5daabe8298cf76c631e38aaebe9d1efeaf4257b |
go1.20.windows-amd64.zip | Archive | Windows | x86-64 | 108MB | e8f6d8bbcf3df58d2ba29818e13b04c2e42ba2e4d90d580720b21c34d10bbf68 |
go1.20.windows-amd64.msi | Installer | Windows | x86-64 | 95MB | 179ec1b55d3c1b014595a72fc5f7f59d7c00f9732cc227b47dfe13e6cc633c7c |
Other Ports | |||||
go1.20.freebsd-386.tar.gz | Archive | FreeBSD | x86 | 95MB | 2f3c68213fa785d0ebfa4e50de5ea8f4baf5d9c12f5783c59e1ee370e35755ae |
go1.20.freebsd-amd64.tar.gz | Archive | FreeBSD | x86-64 | 95MB | 8c5ccff790dda019e070a6a13745aba0c1ea0e3d47076bacf9fb1e0b34cc731f |
go1.20.linux-ppc64le.tar.gz | Archive | Linux | ppc64le | 91MB | bccbf89c83e0aab2911e57217159bf0fc49bb07c6eebd2c23ae30af18fc5368b |
go1.20.linux-s390x.tar.gz | Archive | Linux | s390x | 95MB | 4460deffbc01fe5f31fe226d296e366c0d6059b280743aea49bf81ab62ab8be8 |
go1.20.windows-arm64.zip | Archive | Windows | ARM64 | 103MB | 2421b2ade9b68517f962f0ea4fb27b68b5321b334fb1b353de25be5b2ee90cba |
go1.20.windows-arm64.msi | Installer | Windows | ARM64 | 91MB | 3b520f5ef57fb8e0032eeeec5da1665644daa6499234412e91ab1eb44b05881a |
Windows 系统下安装
Windows 下共有两种包,一种是 .zip 格式的(解压即用),一种是 .msi 格式的(需要安装)。推荐使用 .zip 后缀的安装包来安装。
建议安装在 c:\program files\Go 目录下。
配置环境变量
GOPATH:Go语言工作目录,指定存放自已编写的go项目,包,编译的二进制文件等,例如
C:\goproject
GOROOT:指定Go 开发包的安装目录,例如
C:\go1.20
PATH:增加go命令的路径,让我们可以在命令终端,不写路径,直接运行go命令,追加:
C:\go1.20\bin