Golang基础入门
Golang介绍
Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。 Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。
一、Golang开发环境
Go官网下载地址:https://golang.org/dl/
Go官方镜像站(推荐):https://golang.google.cn/dl/
根据自己系统,自行选择安装。
在window系统现在新的Go安装完后系统会把go添加到环境变量里,不用自己手动添加,可以在命令行里使用 go env 对环境配置进行检查。
Go1.14版本之后,都推荐使用go mod模式来管理依赖了,也不再强制我们把代码必须写在GOPATH下面的src目录了,你可以在你电脑的任意位置编写go代码,所有GOPATH可以不设置。
开发工具可以选Goland 和 vscode ,如果是学生同时习惯了IDEA里的操作的可以使用Goland,学生可以免费申请四年的使用权。
二、Golang语言特性
1、Golang的优势:
极简单的部署方式:
1.可直接编译成机器码
2.不依赖其他库
3.直接运行即可部署
静态类型语言:
编译的时候可以检查出来隐藏的大多数问题
语言层面的并发:
1.天生支持高并发
2.充分利用多核
拥有强大的标准库
1.runtime系统调度机制
2.高效的GC垃圾回收
3.丰富的标准库
4.还有许多
简单易学
1.25个关键字
2.拥有c语言简洁基因,内嵌c语法支持
3.面向对象特征(继承、多态、封装)
4.跨平台性
注意:习惯了C,C++,Java等语法逻辑结构,一时间会不适应go语法表达形式,但是他的语言逻辑表现上要好于python。
三、Golang适合做什么
(1)、云计算基础设施领域
代表项目:docker、kubernetes、etcd、consul、cloudflare CDN、七牛云存储等。
(2)、基础后端软件
代表项目:tidb、influxdb、cockroachdb等。
(3)、微服务
代表项目:go-kit、micro、monzo bank的typhon、bilibili等。