Go 语言入门系列:Go 语言环境安装

简介: Go 语言环境安装

最近将会更新 Go 语言入门的系列文章,非常基础。适合小白入门或者零基础的同学,已有相关 Go 基础的同学可以略过。

可爱的 Golang 吉祥物,出自 Golang 设计者之一 Rob Pike 之妻 Renee French

Golang-Sign.png


由 Google 于 2007 年开发,并于 2009 年开源的 Golang 语言,至今已经走过了将近 10 个年头。自 2012 年 Golang 1.0 稳定版本发布以来,凭借其独特的魅力在全球范围内吸引了众多的开发者和发展了数量庞大的活跃社区。

Golang 在多核并发上拥有原生的设计优势,充分利用现代硬件性能又兼顾开发效率,设计的目标是为了发挥类似 Python 等动态语言开发速度,并在此基础上提供 C/C++ 等编译型语言的性能和安全。

Golang 具备很强的语言表达能力,支持静态类型安全,能够快速编译大型项目;同时也能够让开发人员访问底层操作系统,极力挖掘计算机 CPU 资源,还提供了强大的网络编程和并发编程支持。

Golang 具备以下特性:

  • 从底层支持并发,无需第三方库支持,对开发者的编程技巧和开发经验要求低;
  • 支持自动垃圾回收,避免内存泄露
  • 支持函数多返回值
  • 支持匿名函数和闭包
  • 支持反射
  • 更好的性能
  • 提供强大的标准库支持
  • 快速、静态类型的编辑型语言,同时提供动态语言特性

Golang 简单、高效、并发的特性吸引了众多开发人员加入到 Golang 开发的大家庭中,目前已经涌现大量通过 Golang 原生开发的大型开源项目, 并在软件行业中发挥重要作用,其中包括 Docker、Kubernetes、etcd 等。

环境安装

“工欲善其事,必先利其器”,想要用好 Golang 这门开发利器,首先需要安装好 Golang 的相关开发环境。Golang 自带编译器,所以我们仅需要安装 Golang 开发包即可。

Go 开发包安装

Golang 开发包可以从以下两个网址中获取:


Golang-Download.png

MacOS 和 Windows 的安装由读者自行完成,仅需要下载对应版本的安装器一路安装即可完成。接下来仅介绍 Linux 上的 Golang 开发包安装。

第 0 步

安装可能需要的下载程序 wget:

yum -y install wget

第 1 步

下载 Golang 开发包:

wget -c https://studygolang.com/dl/golang/go1.12.4.linux-amd64.tar.gz

以上下载的 Golang 版本为 1.12.4,大家可以根据当前最新版本进行下载。

第 2 步

解压开发包:

tar -C /home/ -xzf go1.12.4.linux-amd64.tar.gz

根据个人的需要,可以将开发包放置到指定的目录下。此处将开发包解压到 /home/ 目录下。解压后的目录概要如下,它严格遵守 GOPATH 规则。在接下来的章节中会对 GOPATH 规则和相关目录命名进行详细介绍,它是 Golang 编译的核心规则。

├── api //每个版本的 api 变更差异
├── AUTHORS
├── bin //golang 源码包编译出的编译器(go)、文档工具(godoc)、格式化工具(gofmt)
├── CONTRIBUTING.md
├── CONTRIBUTORS
├── doc //golang 文档
├── favicon.ico
├── lib // 引用的库依赖
├── LICENSE
├── misc
├── PATENTS
├── pkg //各个操作系统平台编译好的中间文件
├── README.md
├── robots.txt
├── src //标准库的源码
├── test //测试用例
└── VERSION

第 3 步

将 go/bin 添加到 PATH 环境变量中:

export PATH=$PATH:/home/go/bin

第 4 步

验证 Golang 开发包是否安装成功:

go version

如果安装顺利的话,命令行将输出对应的 Golang 版本,如下所示:

go version go1.12.4 linux/amd64

安装后 Golang 开发环境后,我们即将进入到 Golang 的开发海洋中。

小结

关于集成开发环境,读者们可以按照自己的喜好自行选择相关的集成开发环境。如果可能的话,我在此推荐 Jetbarins 公司的 Goland 集成开发环境,相关地址为:https://www.jetbrains.com/go/。在代码演示中,我们将尽量通过命令行的方式对程序进行编译和调试,减少对开发环境的依赖。


阅读最新文章,欢迎关注公众号:aoho 求索


目录
相关文章
|
19天前
|
关系型数据库 Go 网络安全
go语言中PostgreSQL驱动安装
【11月更文挑战第2天】
52 5
|
19天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
33 4
|
20天前
|
SQL 关系型数据库 MySQL
go语言中安装数据库驱动
【11月更文挑战第1天】
38 5
|
19天前
|
存储 设计模式 安全
Go语言中的并发编程:从入门到精通###
本文深入探讨了Go语言中并发编程的核心概念与实践技巧,旨在帮助读者从理论到实战全面掌握Go的并发机制。不同于传统的技术文章摘要,本部分将通过一系列生动的案例和代码示例,直观展示Go语言如何优雅地处理并发任务,提升程序性能与响应速度。无论你是Go语言初学者还是有一定经验的开发者,都能在本文中找到实用的知识与灵感。 ###
|
24天前
|
Serverless Go
Go语言中的并发编程:从入门到精通
本文将深入探讨Go语言中并发编程的核心概念和实践,包括goroutine、channel以及sync包等。通过实例演示如何利用这些工具实现高效的并发处理,同时避免常见的陷阱和错误。
|
2月前
|
安全 Go 开发者
破译Go语言中的并发模式:从入门到精通
在这篇技术性文章中,我们将跳过常规的摘要模式,直接带你进入Go语言的并发世界。你将不会看到枯燥的介绍,而是一段代码的旅程,从Go的并发基础构建块(goroutine和channel)开始,到高级模式的实践应用,我们共同探索如何高效地使用Go来处理并发任务。准备好,让Go带你飞。
|
2月前
|
存储 安全 Go
Go语言切片:从入门到精通的深度探索###
本文深入浅出地剖析了Go语言中切片(Slice)这一核心概念,从其定义、内部结构、基本操作到高级特性与最佳实践,为读者提供了一个全面而深入的理解。通过对比数组,揭示切片的灵活性与高效性,并探讨其在并发编程中的应用优势。本文旨在帮助开发者更好地掌握切片,提升Go语言编程技能。 ###
|
2月前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
4月前
|
Unix Go
Go从入门到放弃之时间操作
Go从入门到放弃之时间操作
|
4月前
|
机器学习/深度学习 移动开发 Linux
Go从入门到放弃之文件操作
Go从入门到放弃之文件操作