"Go is an open source programming language that makes it easy to build simple, reliable, and efficient software." (from http://golang.org)
golang是由谷歌开发的一门开源编程语言,首发于2009年。可用于解决大规模系统开发问题,原生支持并发,编译速度快,带有垃圾回收功能。相比动态语言(如python)运行速度更快,且类型安全。
1 安装
可以使用安装包进行安装(Linux默认安装到/usr/local/go,Windows安装到C:\Go)。
也可以从源码安装:(以Linux为例)
a 从 https://golang.org/dl/ 下载安装包,如 go1.7.6.linux-amd64.tar.gz
b 解压至 /usr/local 目录:tar -C /usr/local -xzf go1.7.6.linux-amd64.tar.gz
c 将 /usr/local/go/bin 目录添加至PATH中:export PATH=$PATH:/usr/local/go/bin
(如果想支持重启仍然生效,需写入相关文件如$HOME/.bashrc中)
设置GOPATH
GOPATH用于放置项目内容和第三方库。例如:
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
(Linux下用:分隔,Windows下用;分隔。1.8版本起GOPATH有默认值)
如果go安装到了自定义位置,则需要设置GOROOT。
在命令行输入go命令,如果出现下图信息,则说明安装成功了。Great!
开发工具
个人习惯使用Vim,IDE可以使用LiteIDE,其他如VSCode、Atom等编辑器均可使用。
2 第一个go程序
先跟小师妹打个招呼吧:
package main
import "fmt"
func main() {
fmt.Println("Hello, 小师妹!")
}
执行go run hello_sister.go,可以得到输出:Hello, 小师妹!
开心吧233333
(或者先执行go build xx.go,再运行生成的二进制文件)
3 Golang vs Java/C++
相比Java,Golang直接编译成机器码,运行不需要虚拟机;原生支持并发;字符串默认使用UTF-8编码。
为保持简单性,Golang没有以下特性:
类,构造/析构函数
继承
异常
函数注解
用户泛型
相比C++,Golang支持垃圾回收,没有指针运算、头文件、函数重载等。
参考文献
本文集「learning golang」所有文章著作权归作者所有,转载请附原文链接。