Golang开发入门(Linux)

    Go语言是一门跟C非常接近的语言,对于C系(C/C++,Java)语言熟悉的新手可以很快上手。但是Go语言又有自己的一些特点,本文主要目的是让初学者了解这些特点,从而快速的上手。

一、安装

wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
tar -C /usr/local -xvzf go1.8.3.linux-amd64.tar.gz
上述步骤将go安装到/usr/local/go目录下面,也可以安装到其他任何位置。安装后需要设置环境变量。

>export GOROOT=/usr/local/go:就是安装Go的主目录,go命令就来自于$GOROOT/bin/go。

>export GOPATH=/home/niuliguo/workspace/goworkspace:可以把GOPATH看做是一个工作空间,这个是一个必须的变量,Go是通过GOPATH来解决依赖的,而且源文件也要组织放在$GOPATH/src目录下。

>export PATH=$PATH:$GOPATH/bin:$GOROOT/bin,把二进制可执行文件添加到PATH变量中。

以上三句话可以放到~/.bash:

export GOROOT=/usr/local/go
export GOPATH=/home/niuliguo/workspace/goworkspace
export PATH=$PATH:$GOPATH/bin:$GOROOT/bin
然后执行:

>source ~/.bashrc


二、Hello World

创建目录和文件:

mkdir -p $GOPATH/src/hello
cd $GOPATH/src/hello
vim hello.go
hello.go:

package main
import (
  "fmt"
)
func main() {
  fmt.Println("Hello world")
}
运行文件:

>go run hello.go

go run hello.go:将hello.go编译成二进制可执行程序,然后再运行。

go build / ./hello:在当前目录下编译二进制文件

go install:将可执行文件安装到$GOPATH/bin目录下

三、依赖管理

Go依赖管理的基本单位是 package ,简而言之,当你把所有 *.go 文件放到一个目录下时,它们就是同一个package。

3.1 标准库package

标准库package是指Golang内置的package,例如 fmt, strings等,导入这些库比较简单,只需要 import “$package_name" 即可,go编译器会在GOROOT中找到这些依赖的。需要注意的是Go 允许 sub package的, 例如 math/rand, crypto/rand 等, 在引入sub package时,sub package最后一部分作为package name,所以前面两个sub package的名字都是rand,当它们出现在同一个源文件中时就会出现冲突(这种情况是比较少见)。Go允许在import package时重命名package , 例如 import crand "crypto/rand" ,这时候 crypto/rand就便成 crand了,其作用类似于Python的 import ... as 语句。

3.2 第三方package

目前绝大多数第三方package都是通过github以源码的方式发布的,所以有两种方式可以安装第三方package

a.手动clone 源码到 $GOPATH/src 下,然后引用方法类似预自己写的package

b.Go 依赖管理支持自动clone,例如 go get github.com/mitchellh/mapstructure 可以将repo自动clone下来并编译,然后在代码直接引用就可以了。需要注意的是这时候package 名字将变成这样  import "github.com/mitchellh/mapstructure"

你也可以现在源码中声明 import语句,然后在运行 go get, 它会自动clone 所有的repo并编译安装。

四、Vim开发环境配置

这里介绍Vim 配置主要是因为Vim不需要GUI桌面环境,有时候ssh 远程开发十分方便。Go 有几个不同的Vim插件,综合比较下来功能最强大的是 fatih/vim-go ,其功能包括

  • 精准的定义跳转
  • 代码自动补全

可以按照官方步骤安装,也可以clone我配置好的.vim环境

cd ~
git clone https://github.com/bluesalt/DOTVim .vim
ln -s .vim/.vimrc

打开一个.go 文件,按提示安装就可以了。



Author:忆之独秀

Email:[email protected]

注明出处:http://blog.csdn.net/lavorange/article/details/73254637



猜你喜欢

转载自blog.csdn.net/lavorange/article/details/73254637