亲(si)爱(ji)的(lao) 宝二爷:
上次你听说我在用 Go,表示也想学,我也答应给你安利一下我上手以来的一点想法。奈何我们都是身不由己的加班狗,一直没有机会细聊这件事。
不过就在今天,听说你给自己定下了 2017 年的一个小目标:开始写简书,分享技术,还建议我也来写,记录学习 GO 的过程。这想法与我不谋而合,我决定吃你一记安利,也记录下自己在技术学习中的思考,分享一点人生的经验。
行动力是最重要的,不如就从今天开始,从带你入门 Golang 开始。
Golang 好处都有啥
Go 这门年轻的语言,设计时主要参考了 C++,吸收其它现代语言的优势,同时又尽量避免了 C++ 的复杂性,因此具有了编译型,静态类型,自带垃圾回收,天生多线程,有限的指针,没有继承等等特点。
在我有限的经验中,能感受到一些比较突出的优势:
学习成本低,上手快
我在入职之前只看了 官网 的入门教程,大概了解了 Goroutine,就来到现在的公司开始写 Go。
语法简洁,开发快
Go 的语法设计简洁高效,尽可能避免了大括号,语言中只有25个关键字,意义明确。
部署简便,迭代快
Go 编译出的二进制包,直接扔服务器就能跑,环境依赖是什么,能吃吗?
社区活跃,发展快
无论是技术分享,还是第三方库的开发都很活跃,虽然总量不能跟其它历史更长的语言相比,但基础设施已经比较完备,同时也有更多机会贡献自己的力量。
Go 的这些特点决定了,它很适合现在的 web 应用开发,不过如果要做其它事情,有些时候还是有点捉急的,这个以后再讨论。
Let’s GO~
先来配置开发环境
其实扔一个 官网链接 就好了,只要三步:
- 把冰箱门打开,下载安装语言二进制包,包括编译器等核心内容
- 下载安装 Go Tools,主要是标准库和官方工具
- 配置环境变量
配置 GOPATH
这里需要注意一下,Go 要求所有的代码都放在 $GOPATH/src
目录下,即所有的项目代码都在这一个工作空间下的不同子目录,这是为了配合 Go 的引用机制。比如 git clone 的项目代码都在 $GOPATH/src/github.com/user/project
,一般这个变量都设置为 ~/go
或 ~/work/go
再来个趁手的编辑器
不过,想要用得爽,还是要有一些趁手的工具。既然不像你一样,有了最能提升编程幸福感的外设–女朋友,更要对自己好一点。
写 Go 不需要 IDE,编辑器我用 VS code,搭配准官方插件 Go for Visual Studio Code。听说,写 Go 时,微软的 code 和 Mac 更配哦~
这插件是个合集,语法高亮,自动补全都是基本要求,代码格式化,符号搜索跳转重命名,自动生成单元测试代码框架,还有个不太完善的debugger。不过由于墙,安装过程往往有些曲折,遇到了再讨论具体解决方法。
终于 Hello Golang
工作目录就用 $GOPATH/src/github.com/你的ID/hello
吧,代码文件就叫 hello.go
吧,以下就是一个 Go 的 Hello World 代码,顺便看看 go 文件的几个基本要素.
package main
import "fmt"
func main() {
fmt.Printf("hello, golang\n")
}
然后,编译
$ go install github.com/user/hello
运行
$ $GOPATH/bin/hello
hello, golang
好了,就是这样。
这第一篇到这基本就结束了,接下来可以看看 How to write go code 和 go 语言入门教程。需要更深入了解的话还有 官方文档 和 Effective Go。
请慢用,一点微小的贡献,但愿对你有所帮助。
from houz with love~~~