go语言成为2016年TIOBE年度语言,距离上次TIOBE年度语言至今已经过去7年,在过去的7年里,go语言也得到了广泛的应用,尤其是在开源领域,从docker到kubernetes都使用了go作为开发语言。在这系列文章中,我们将一起来由浅入深学习一下go语言,至少在研究这些流行的开源软件更加得心应手一些。
背景
go语言是由google在2009年11月10日发布的一门全新的语言,支持面向对象和反射机制,具有接近于c的运行速度,远远快于c和c++的编译速度,近似脚本语言的灵活。当然和总多流行语言一样,有着众多坚定的支持者和不屑一顾的反对者,但是从它诞生到现在,发展和扩散的速度一直很快也是不争的事实。
特点
go语言具有很多的特点,将一部分主要特点列举如下:
项番 | 详细内容 |
---|---|
No.1 | 静态编译型语言 |
No.2 | 语法简洁,趋近于脚本化 |
No.3 | 跨平台支持 |
No.4 | 自动垃圾回收机制 |
No.5 | 具有并发变成模型和机制(goroutine等) |
No.6 | 支持多种编程风格,支持面向对象 |
No.7 | 无继承层次的轻量级方式 |
No.8 | 全面的工具支持 |
No.9 | 统一的代码风格以及自己的代码格式化工具 |
No.10 | 编译和运行速度飞快 |
No.11 | 总多的标准库 |
No.12 | … |
安装
安装非常简单,只需要下载/解压/设定环境变量即可,本系列文章中使用CentOS,整体相关相差无几,仅仅在于安装时的package/以及环境变量的设定方式的OS的差别而已。
项目 | 详细信息 |
---|---|
下载地址 | https://golang.org/dl/ |
下载版本 | 1.7.5 |
OS | Linux |
OS bit | 64bit |
二进制链接 | https://storage.googleapis.com/golang/go1.7.5.linux-amd64.tar.gz |
项目 | 详细说明 |
---|---|
api | go各个版本的api,保存在go1.1.txt到go1.7.txt7个文件中。except.txt保存即将废弃的api,而next.txt保存着下个版本将会出现的内容 |
bin | 相关的可执行文件,缺省会有go/gofmt/godoc |
doc | 离线官方文档和说明 |
misc | 各IDE的插件等 |
pkg | go标准库的归档文件 |
src | 源码 |
test | 测试代码 |
C语言的经验者
有C语言的经验的开发者中可以从下面的比较中快速上手。
http://hyperpolyglot.org/c
总结
文章知识点与官方知识档案匹配,可进一步学习相关知识Go技能树快速上手Go安装与配置1918 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!