一、go语言介绍
go
全称为 Golang
,是开源的编程语言,它能让构造简单、可靠且高效的软件变得非常容易。
使用过C/C++
里面线程的我们应该都知道,其使用起来非常的麻烦,不仅调用麻烦,如果想要同步数据就还需要各种锁,并且一个线程需要占用数兆内存。
而go
中有专门的goroutine
(轻量级线程实现)解决了这个问题,一个goroutine
仅占数K内存大小,并且其有专门的channel
作为goroutine
之间的数据传输结构,完全没有锁的概念,使用起来更加简单。
也正是由于这个极好的特性,go语言在服务器上使用的较多。
而且最重要的是,它的语法非常简单,接近JavaScript
,并且其生成的可执行文件运行效率接近C++
,不仅跨平台,它还有大量的库可以让我们直接使用。
也正由于这个特性,如果有时我们想要节约开发成本,又想要写一个高效率的程序或脚本,那就可以使用go语言(python语言开发虽然快,但执行效率相比较而言真的很低)。
二、go开发环境配置
首先点击这里,去go语言官网下载go安装包:
然后选择自己合适的版本:
因为我用的windows,所以就下载的windows版本。
下载完成后,一路点击安装即可,然后打开控制台,输入go:
有输出信息则安装成功
前面说了,go语言有很多库可以让我们使用,但由于其默认的库都在外网,所以有时候下载起来会很慢(或者根本下载不了)
这时我们就可以调整一下go的默认配置,设置国内代理,打开控制台输入:
go env -w GOPROXY=https://goproxy.cn,direct
这样我们的go语言开发环境就配置好了。
但如果用记事本码代码,有点过于原始,所以一般我们还是要下载个专业的编辑器,比如vscode
,点击这里跳转。
然后你可以在桌面或任意文件夹中,新建一个go
文件夹,里面新建一个main.go
的文件(当然你也可以任意取其它名字,但.go
后缀不要动)。
然后,在控制台中进入这个文件夹(cd命令,或者直接在该文件夹上面的文件路径中输入cmd
,然后Enter
)
然后输入:code .
这是vscode
的命令,.
代表当前目录,即用vscode
打开当前目录。
打开main.go
文件,这时vscode
就会在软件的右下角提醒你安装所有需要的插件,全部点安装即可。
三、Go语言组织结构
先将下面这段代码复制进main.go
文件中:
package main
import "fmt"
func main() {
fmt.Println("Hello world")
}
这时vscode
大概长下面这样:
这就是一段输出Hello World
字符串的代码而已。
Ctrl+S
保存后,在控制台中进入这个目录,输入 go run main.go
:
是不是非常简单!
现在我们就来理一理上面这些步骤都是在干嘛,有什么作用。
- 首先是代码中第一行的
package main
和C/C++
不同,go语言采用包的概念组织代码(一个包相当于C++
中的一个库,类似于vector
),并且我们的主函数所在的程序必须在main
包里面(这是go语言的规定),这个main.go
文件为我们的主函数main
函数所在的文件,因此需要在最前面申明该文件中的代码为main
包中的
- 然后是第二行代码
import "fmt"
既然有申明包,那肯定就有导入包,该行代码的意思就是导入fmt
包。我们将要使用该包中的东西(fmt
为官方标准库,为format
的缩写,即格式化库,常用于输出输入)
- 第三行代码:
func main()
这也是与C/C++的不同之处,即申明一个函数只需要在函数名前面添加func
关键字即可,而main
是必须要的函数名称,为程序的执行入口,这一点和C/C++相同。