Go语言
大约 2 分钟
Go语言最初是由谷歌公司的Robert Griesemer、Ken Thompson、Rob Pike三位大咖于2007年开始设计发明。由于Go语言继承和发扬了C语言的简单哲学,并充分发挥当前时代多核架构的能力,因此,Go语言更多的是被描述为21世纪的C语言。诞生至今,在多个领域尤其是云计算领域有着广泛的应用。
对我的吸引
简单
Go语言的语法非常简答,仅仅20几个关键字即可。相比较学习其他语言时,我觉得更加减轻心智的负担,而不用纠结一些看似高大上的语法糖。Go语言的简单贯彻到整个开发周期中,例如:
- 类型转换,在Go语言中必须显示的进行转换,不必纠结
- 包依赖,Go语言编译时如果书写了未引入的包会报错,这也大大提高项目的构建速度
- 函数支持多返回值,就不用写多个函数
- 函数作为一等公民,可以传参、赋值、返回。遇到一些多场景问题,直接把函数作为参数进行处理即可
支持并发
Go语言天生支持高并发,在多核时代下,能够充分利用多核的能力。而且语法也简单,仅仅使用go xxx()
即可启动一个协程异步处理函数。
工具链丰富
Go语言有成熟的工具链帮助我们构建、测试、代码检测、下载依赖包等。
支持垃圾回收
Go语言在运行态帮助开发者进行垃圾回收,大大降低开发者的心智负担。
官方网站
- 官方网站,提供完善的参考文档
- Playground,提供在线Go语言运行沙箱环境,方便我们验证一些语法特性和分享代码片段。(talk is cheap,show me your code)
- 官方博客,不定期发布一些Go语言最好的实践文章。
- 官方教程,提供Go语言的学习教程,包括:推荐书籍,第三方教育培训等
- 库文档,提供Go语言官方库和第三方库的文档,方便集成
- 官方讲稿,Go语言核心团队的公开演讲