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进行处理,非常感谢!