go基础:开发环境安装(Ubuntu)

100 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天,点击查看活动详情

最近因为工作需要做一些golang相关的微服务,打算系统的学习一些go,下面就是一些简单学习记录。

介绍

Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。

Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。

Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。

对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。

首先今天先学习开发环境的安装,将安装一个比较新的版本1.18.5。

下载安装

$ sudo rm -rf /usr/local/go
$ sudo tar -C /usr/local -xzf go1.18.5.linux-amd64.tar.gz

增加环境变量

~/.bashrc末尾增加下面语句,这样就可以在全局使用go命令了:

export PATH=$PATH:/usr/local/go/bin

因为是新的版本,我们这里就不需要增加GOPATH的环境变量了。GOPATH的历史这里不赘述了,自行找度娘吧。这个感觉介绍的还不错:Golang中的GoPath和GoModule

验证

codemaxi@pc:~/goexample/hello$ go version
go version go1.18.5 linux/amd64

显示了正确的go1.18.5版本,说明安装成功。

Hello go

下面我们写一个hello go的程序验证一下编译和运行就彻底证明环境安装成功了。

首先,创建项目并初始化module,我们上面没有设置GOPATH,使用了module这种方式,所以这里需要go mod init 一下:

codemaxi@pc:~/goexample$ mkdir hello
codemaxi@pc:~/goexample/hello$ cd hello
codemaxi@pc:~/goexample/hello$ go mod init example.com/hello
go: creating new go.mod: module example.com/hello
​

创建一个hello.go文件,输入如下内容:

package main
​
import "fmt"func main() {
    fmt.Println("Hello, World!")
}

运行程序:

codemaxi@pc:~/goexample/hello$ vim hello.go
codemaxi@pc:~/goexample/hello$ go run .
Hello, World!
​

go run是跳过编译直接运行程序,中间不会生成可执行文件,如果需要生成可执行文件需要使用go build:

codemaxi@pc:~/goexample/hello$ go build hello.go 
codemaxi@pc:~/goexample/hello$ ls
go.mod  hello  hello.go
codemaxi@pc:~/goexample/hello$ file hello
hello: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped

可以看到上面生成了hello的可执行文件,是可以直接运行的:

codemaxi@pc:~/goexample/hello$ ./hello
Hello, World!
​

好了,今天的开发环境安装就到这里啦。