Go 语言快速入门指南: 介绍及安装
1. 前言
时至今日,如果你想当一名程序员,入门学习编程。你有众多的开发语言可以选择,从 Tiobe 编程语言趋势版可以看到,比较流行的有:Python
、C
、C++
、Java
、C#
、JavaScript
、SQL
、Swift...
做选择从来不是容易的事情,所以你可能会问,我该学哪一门语言?
在我们问自己该学哪一门语言之前,不如再往前追问一句:为啥会有这么多语言?
其实,每一门语言被设计出来都是有原因的,都是为了解决不同的问题,取决与你想做什么(移动开发
、后端开发
、前端开发
、桌面应用
、游戏开发...
)。
甚至在为了方便自己更好的工作,你可能会学习一门或多门语言。
都 2021
年了,如果你还在纠结学哪门语言开始入门,那么,我会推荐 Go 语言
。
2. 为什么选Go语言
话说在 2007
年的一个云淡风轻的下午,谷歌的三位工程师(Robert Griesemer
、Rob Pike
和Ken Thompson
)由于对其内部的各种系统(主要使用 C++
语言构建)和工具感到沮丧,产生了从头开始重新设计一门新的编程语言的想法。这三位大佬觉得这门语言应该是用来解决其他语言的弊端,同时保留其有用且优秀的功能。
Go
来自于一个相当令人印象深刻的团队。肯-汤普森(Unix和C语言的设计者和创造者)
,罗伯-派克(UTF-8和Unix格式的共同创造者)
,以及罗伯特-格里瑟默(谷歌工程师)
。如果想看看
Go
的前世今生,可以看看 "Go at Google:软件工程服务中的语言设计
",这篇文章讨论了 Go 最初是如何为解决 Google 的问题而构思的。
所以 Go
被设计出来:
-
使用静态类型,拥有 C 语言的运行时效率
-
具备
Python
和JavaScript
等语言的可读性和实用性 -
在网络和多处理方面表现出卓越的性能
-
为云时代而生,为大规模多线程和并发性而设计的精简的语言
-
专门设计用于构建快速、可扩展的应用程序。
2008
年初,Unix
之父 Ken Thompson
实现了第一版 Go
编译器,用于验证之前的设计。这个编译器先将 Go
代码转换为 C
代码,再由 C
编译器编译成二进制文件。
到 2008
年中旬,Go
的第一版设计基本结束了。这时,同样在谷歌工作的 Ian Lance Taylor
给 Go
语言的三位作者发了一封电子邮件。他宣称为 Go
语言实现了一个 gcc
的前端,这也是 Go
语言的第二个编译器。
2009
年,谷歌正式开源了 Go
语言,也是目前发展迅速的编程语言之一。
截至目前,众多大公司在使用这门语言,这要归功于云计算和微服务的激增。 Google
、Uber
、Dropbox
、Alibaba
、Riot Games
、Tencent
、ByteDance...
3. Go 安装
听到这,你是否很想在你的电脑上进行 Go
语言编程。所以 Let's Go~
安装 Go
的最简单方法是进入官网下载安装包。该网站会自动检测你所使用的操作系统并显示你应该下载的 Go
的安装程序:
如果上面的网站访问不了的话,推荐选择 Go
语言中文网进行下载,点此处进入如下下载界面 :
当前最新的 Go
版本是1.18.4
版本:
MAC :studygolang.com/dl/golang/g…
Linux:studygolang.com/dl/golang/g…
Windows:studygolang.com/dl/golang/g…
下载完 Go
安装程序后,双击安装程序,开始直接的安装过程。建议直接使用默认的安装设置,不需要改变任何这些设置。直到安装完成。
4. Go 版本
使用 go version
命令,查看 Go
是否安装成功:
$ go version
go version go1.18.4 linux/amd64
5. Hello World 程序
- 首先创建一个存放
Go
源代码的文件夹:
$ mkdir -p GoProjects/Go/src/
- 创建
Hello.go
文件
$ cd ~/GoProjects/Go/src/
$ touch hello.go
- 使用文本编辑器打开
hello.go
文件,编辑第一个程序内容,点击保存
package main
import "fmt"
func main() {
fmt.Println("Hello World")
}
如图所示:
保存完后运行,命令为: go run hello.go
,就能看到输出 Hello World
显示在屏幕了。
$ go run hello.go
Hello World
Go
包括:可执行程序和库程序。
可执行程序:
我们可以直接从命令行运行。(Windows
一般为 .exe
后缀的文件,Linux
一般不带后缀)。在Linux
中,我们可以使用 go build
命令生成可执行程序 hello
,然后运行这个程序,同样也能在控制台中打印出 Hello World
。
$ go build hello.go
$ ls
hello hello.go
$ ./hello
Hello World
库:
代码的集合,把所有的代码打包放到一块,方便我们能够在其他代码中使用。
现在,让我们来解释一下 Hello.go
程序:
package main
是我们第一行的程序,每一个 Go
程序必须由一个 package
声明,各种各样的包是Go
程序组织和复用代码的方式。
import "fmt"
: import 关键字
能从其他的 packages
引入代码为我所用 fmt
包其实是英文 format
的缩写,顾名思义,这个包实现了输入和输出的格式化。
func main() { }
: 函数块
有输入、输出和一系列逐步执行的语句。func 定义了一个函数块,后面是函数名,所以这个函数叫 main
函数,”()“内可以包括零个或多个参数,括号后可以有返回类型。”{}“是个函数体。本例中的函数没有参数,也没有返回值,只有一个打印语句。
fmt.Println("Hello World")
: 该声明由三个部分组成。 首先,我们访问 fmt
包中的另一个函数 Println
(即 fmt.Println
部分,Println
表示打印行)。 然后我们创建一个包含 Hello World
的新字符串,并以该字符串作为第一个也是唯一的参数调用(也称为调用或执行)该函数。
总结起来就是:创建一个新的可执行程序,该程序引用 fmt
库并包含一个名为 main
的函数。 该函数不接受任何参数,不返回任何内容,并执行以下操作:访问 fmt
包中包含的 Println
函数并使用一个参数调用它 - 字符串 Hello World
6. 总结
本篇文章首先介绍了 Go
语言的一些来龙去脉、 Go
语言的特点与优点,紧接着说明了 Go
的安装方法,并开始编写了第一个 Hello World
程序。
这可以说是快速入门的第一步,知道了 Go
是咋回事。
下一篇我们继续探索 Go
语言更多知识。敬请期待!
知识星球
星球地址:t.zsxq.com/03MJM7YfI
关注公众号「程序员小乔」
转载自:https://juejin.cn/post/7127456351613091853