Golang 入门与配置
Golang
Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。
罗伯特·格瑞史莫,罗勃·派克(Rob Pike)及肯·汤普逊于2007年9月开始设计Go,稍后Ian Lance Taylor、Russ Cox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。在2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。目前,Go每半年发布一个二级版本(即从a.x升级到a.y)。 – wikipedia
VSCode
如果你想尝试更换一款轻量级且功能性强的代码编辑器,笔者推荐你使用VSCode。它可以在我们编写Go程序时提供提示、检错等功能。Vim 和 EMACS 党请直接无视我吧:)
官方介绍:
Visual Studio Code 是一个轻量级但功能强大的源代码编辑器,可在 Windows,macOS 和 Linux 桌面上运行。它内置了对JavaScript,TypeScript和Node.js的支持,并为其他语言(如C ++,C#,Java,Python,PHP,Go)和运行时(如.NET和Unity)提供了丰富的扩展生态系统。
安装
- Visual Studio Code on Linux
- 上面的安装指南可以解决大部分童鞋的安装需求
- 也可以下载对应系统的安装包,再在本地安装,以 CentOS 为例
- 下载地址
- 在包所在文件夹里,使用
sudo yum install <file>.rpm
命令安装,<file>
指的是你下载的包文件名
- 下载地址
Golang 安装
这里以 CentOS 7 为例,MacOS 的安装过程是一样的,Windows 没有尝试过,所以 WIndows 党请继续无视我:)
如果你尝试着访问 官方网站,你会发现你被qiang了…
这个时候身为程序员的你应该是万能的,机智的你会想到两个办法:
- 搭梯子,不想进9月加急名单。
- 寻找国内资源
这时候我们只能走第二条路了,很好,Golang 中国项目组 可以帮到我们。
安装
建议使用系统包管理工具安装:
$ sudo yum install golang
测试是否安装成功:
$ go version
配置环境变量
建议先了解一下 Go 语言工作空间
go
工具为公共代码仓库中维护的开源代码而设计。 无论你会不会公布代码,该模型设置工作环境的方法都是相同的。
Go代码必须放在工作空间内。它其实就是一个目录,其中包含三个子目录:
src
目录包含Go的源文件,它们被组织成包(每个目录都对应一个包),pkg
目录包含包对象,bin
目录包含可执行命令。
GOPATH
环境变量指定了你的工作空间位置。它或许是你在开发Go代码时, 唯一需要设置的环境变量。
- 创建工作空间:
$ mkdir $HOME/gowork
- 配置
GOPATH
环境变量,在~/.profile
文件中添加:
export GOPATH=$HOME/gowork
export PATH=$PATH:$GOPATH/bin
- 检查配置:
$ go env
安装工具和插件
同样的,针对的是安装了VSCode
的童鞋。
-
安装
Git
-
go
语言的插件主要在GitHub
上,所以安装Git
是工作的开始 -
$ sudo yum install git
-
-
安装
go
的一些工具和插件-
如果你尝试用
vscode
编写Go代码,它会提示你安装一些东西,当你点击Install后,发现插件都安装失败,这可怎么办呢?身为一个程序员,你是万能的,此刻你应该想到两个方法: -
翻墙是不可能教的:)
-
所以我们来一些别的操作:把插件源码下载到本地
-
# 创建文件夹 $ mkdir $GOPATH/src/golang.org/x/ # 下载源码 $ go get -d github.com/golang/tools # copy $ cp $GOPATH/src/github.com/golang/tools $GOPATH/src/golang.org/x/ -rf
-
-
安装刚刚下载的工具包
-
使用
go install
命令 -
$ go install golang.org/x/tools/go/buildutil
-
退出
VSCode
,重开后按提示安装,如果发现仍有安装失败的插件,可以尝试退出重开VSCode
,有的时候重开就是这么万能:)
-
编写第一个 Go 程序
创建源代码目录:
$ mkdir $GOPATH/src/github.com/github-user/hello -p
使用 vs code 创建 hello.go
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
在终端运行!
$ go install github.com/github-user/hello
$ hello
注意:上面目录路径里的github-user
应替换成你的 Github 账号