1 简介

最近两年Golang发展迅猛,大有比肩C++Java等主流语言、成为未来十年最为流行的编程语言之势。在开源社区中,热火朝天的DockerKubernetesCoreOS生态圈都采用Golang开发,便是Golang大热的最佳例证。Golang之所以备受推崇,一方面得益于其特有的并发编程模型,一方面得益于其更为简约抽象的编程哲学(接口、OOP等特性)。作为分布式领域的开发者,不能不关注Golang


2 安装

环境:Ubuntu 14.04

sudo apt-get install golang-go
sudo apt-get install golang-go.tools # 安装godoc等工具

3 示例程序

hello world,例子来源于许式伟等人翻译的《Go语言程序设计》。

// hello.go
package main // package declaration,must only
import (     // import packages
   "fmt"
   "os"
   "strings"
)
 
func main() {
   who := "World!"
   if len(os.Args) > 1 {
       who = strings.Join(os.Args[1: ], " ")
   }
   fmt.Println("Hello", who)
}

4 编译与运行

go语言编译主要包含两种方式。

4.1 go build

在源文件目录下执行go build即可,会在同一目录下生成可执行文件。编译、运行效果如图。

wKioL1YYcLDyLtH5AAFDh-rlaRg338.jpg

4.2 go install

go install会在标准路径$GOPATH/bin下生成可执行文件,更适合实际项目的编译。

go install编译具有三个前提条件:

(1)设置环境变量GOPATH

(2)Golang的bin目录必须在环境变量$GOPATH中.
(3)必须有一个包含src的目录树,其中包含了本地程序和本地包的源代码;同时,src的上一级目录必须在环境变量$GOPATH中。


我们通常在bashrc中设置GOPATH

vim ~/.bashrc

# Golang
export GOPATH=/home/wm/work/basement/golang/programming_in_go/    

source ~/.bashrc

编译、运行效果如图。

wKioL1YYcdmwyHJ2AAG2hZZ1cNY117.jpg