Golang基础入门

272 阅读2分钟

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等。