一.我为什么要学习go语言

当今已经是移动和云计算时代。Go出如今了工业向云计算转型的时刻。简单、高效、内 置并发原语和现代的标准库让Go语言尤其适合云端软件开发(毕竟它就是为此而设计的)。到2014年,Go项目拥有了上百的核心贡献者,其生态圈中拥有了数不尽的第三方库和工具(https://godoc.org/),更有非常多大公司開始或迁移到go语言,一些重量级的开源云项目。诸如Docker和Kubernetes 都是用Go语言实现的,一些运作基础设置的公司,诸如Google、CloudFlare、Canonical、Digital Ocean、Github、Heroku以及微软也都在使用Go语言开发一些重量级的项目。

再来看看例如以下公司开源的go库

(1)Facebook开源其go库 ​​https:///facebookgo​

(2)Dropbox开源了其基于Go语言的工具库​​godropbox​​,并表示在一年前已经决定将Dropbox中对性能要求比較高的后端程序从Python迁移到Go语言。

Dropbox的差点儿全部的代码都是用Python编写的, Python语言被广泛使用在server端、桌面的client、站点控制逻辑以及后端的 API 和分析上。Dropbox亲睐Python简单易学、开发效率高等特点。可是如今为了支撑日益增长的用户数量,Dropbox不得不将部分对性能要求比較高的业务替换为有更好的并发支持和更快的执行速度的Go语言。

Go 眼下已经发展到1.4版本号,除了其新增的特性和bug修正外,它为实现一个新的低延迟垃圾收集器以及支持在移动终端上执行Go奠定了基础。作为程序猿我们必须在掌握精通一门语言的同一时候须要扩大视野,学习第二种语言的设计思想和精髓。而我觉得go再合适只是了!

2015年将是Go语言大爆发的一年。


二.Go语言开发环境搭建

1.Go的安装

(1)下载go安装程序 下载地址:​​https:///dl/​​ (墙内下载地址​​http://www.golangtc.com/download​​),假设是您的系统是windows32 位系统,请选择go1.3.3.windows-386.msi就可以

Go语言开发环境配置_git

(2)下载后直接双击msi文件安装。默认安装在c:\go

(3)安装完毕后默认会在环境变量 Path 后加入 Go 安装文件夹下的 bin 文件夹 C:\Go\bin\,并加入环境变量 GOROOT,值为 Go 安装根文件夹 C:\Go\

(4).验证是否成功安装,在执行中输入 cmd 打开命令行工具,在提示符下输入 go

Go语言开发环境配置_环境变量_02

(5)设置工作空间gopath文件夹(Go语言开发的项目路径)

Windows 设置例如以下,新建一个环境变量名称叫做GOPATH。值为你的工作文件夹,比如笔者的设置GOPATH=e:\mygo

Go语言开发环境配置_go语言_03

以上 %GOPATH% 文件夹约定有三个子文件夹:

src 存放源码(比方:.go .c .h .s等)

pkg 编译后生成的文件(比方:.a)

bin 编译后生成的可运行文件(为了方便,能够把此文件夹增加到 windows的PATH 变量中,在环境变量path后追加%GOPATH%\bin)

(6)用go env命令查看设置环境变量

Go语言开发环境配置_go语言_04

2.IDE的选择和设置Go的开发ide眼下有非常多选择,比方LiteIDE,Vim,Emcas。goEclipse等,这里推荐Sublime Text 2(下面简称Sublime)+GoSublime+gocode组合

(1)下载安装Sublime Text 2 ​​http://www.sublimetext.com/​

(2)安装Package Control包管理工具

Ctrl + `(该键位tab键上方的~键)组合键打开Sublime2的命令行(注意输入法模式是英文状态),然后粘贴运行例如以下代码

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation


然后重新启动sublime,能够发如今在菜单条多了一个例如以下的栏目,说明Package Control已经成功安装了。

Go语言开发环境配置_go语言_05

(3)安装GoSublime插件

Ctrl+Shift+p打开Package Controll 输入pcip(即“Package Control: Install Package”的缩写),然后输入GoSublime,按确定就開始安装了。

(4)同上步(3)安装Go Build

(5)安装gocode代码自己主动提示

打开windows的命令行提示符程序,開始-》执行-》cmd执行例如以下代码

go get -u /nsf/gocode

go install /nsf/gocode

假设有错误提示,那么要安装gitclient(windows git 下载地址 ​​http://msysgit.github.io/​ ​ 。同一时候要在path环境变量后追加git配置 ;D:\Program Files\Git\bin;D:\Program Files\Git\libexec\git-core;)

(6)设置go非标准库智能提示

最新版本号的 gosublime 要求设置你的 GOPATH 变量到它的配置文件里。否则可能无法支持对非标准库包的代码输入提示。打开 Settings - Default,拷贝全部内容,然后粘贴到 Settings - User 中(这种做法是为了保证你的改动不会被插件更新而重置,这插件更新非常频繁)。

接下来,在 env 这栏中输入你的 GOPATH 变量。重新启动设置生效。

"env": {
"GOROOT":"C:\\go",
"GOPATH": "E:\\mygo"
},



三.编写和执行Go程序

1.用sublime在gopath/src文件夹下新建一个程序hello.go。代码例如以下

Go语言开发环境配置_环境变量_06

2.执行go程序

CTRL+B打开sublime的命令行,在提示符下输入 go run hello.go

Go语言开发环境配置_go语言_07

3.编译生成exe程序

CTRL+B打开sublime的命令行。在提示符下输入 go build hello.go

四 .go语言学习资料

1.go指南:官网链接:​​https:///welcome/1​​(须要梯子)。假设无法打开请用国内链接:​​http:///​

2.《the way to go》,假设看英文感觉吃力,github上无闻大牛已经做了中文译本:​​https:///Unknwon/the-way-to-go_ZH_CN​

3.《Go 学习笔记 第三版》雨痕写的,该电子书在github开源:​​https:///qyuhen/book​

4.《go web 编程》,是谢大(beego的作者)写的电子书,github中文文件夹链接:​​https:///astaxie/build-web-application-with-golang/blob/master/zh/​

5.《go编程基础》视频教程,此教程是无闻大牛解说的,github视频链接:​​https:///Unknwon/go-fundamental-programming​