Golang 是什么

Go 亦称为 Golang.

  • 谷歌开源
  • 编译型语言,静态语言。
  • 天生支持并发

Golang 的主要关注点是使得高可用性和可扩展性的 Web 应用的开发变得简便容易。(Go 的定位是系统编程语言,只是对 Web 开发支持较好)

为何选择 Golang

既然有很多其他编程语言可以做同样的工作,如 Python,Ruby,Nodejs 等,为什么要选择 Golang 作为服务端编程语言?

  • 并发是语言的一部分(并非通过标准库实现),所以编写多线程程序会是一件很容易的事。后续教程将会讨论到,并发是通过 Goroutines 和 channels 机制实现的。

  • Golang 是一种编译型语言。源代码会编译为二进制机器码。而在解释型语言中没有这个过程,如 Nodejs 中的 JavaScript。

  • 语言规范十分简洁。所有规范都在一个页面展示,你甚至都可以用它来编写你自己的编译器呢。

  • Go 编译器支持静态链接。所有 Go 代码都可以静态链接为一个大的二进制文件(相对现在的磁盘空间,其实根本不大),并可以轻松部署到云服务器,而不必担心各种依赖性。

    安装

Golang 支持三个平台:Mac,Windows 和 Linux(不只是这三个,也支持其他主流平台)。你可以在 https://golang.org/dl/ 中下载相应平台的二进制文件。(如果下载不了,请到 https://studygolang.com/dl 下载)

Mac OS

/usr/local/go/usr/local/go/binPATH

Windows

C:\Goc:\Go\binPATH

Linux

/usr/local
/etc/profile$HOME/.profile
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
/etc/profile$HOME/.profile$HOME/.profile

检查:

~ go version
go version go1.14.1 linux/amd64

GOROOT和GOPATH

GOROOTGOPATHGOROOTGOPATH

GOPATH在不同操作系统平台上的默认值

平台 GOPATH默认值 举例
Windows %USERPROFILE%/go C:\Users\用户名\go
Unix $HOME/go /home/用户名/go