Go 语言
Go 语言学习方向
可以简写成 Golang
方向:区块链、Go服务端开发工程师 Golang分布式、云计算等
Go 语言的诞生
三位设计者:Ken Thompson、Rob Pike、Robert Griesemer
2009 年发布第一版 2015年 剔除最后的C代码
Go 语言特点
保证静态语言的安全和性能、又可以达到动态语言的开发维护的高效率、Go=C+Python ,
- 从C语言 继承了好多的理念语法、控制结构、指针等
- Go语言一个文件都要归属于一个包
- 引入垃圾回收机制、内存自动回收、不需开发人员管理
- 天然并发
- 管道通信机制
- 函数返回多个值
- 新的创新:切片、延时执行等
Go 语言环境安装
下载地址
Go官网下载地址:https://golang.org/dl/
Go官方镜像站(推荐):https://golang.google.cn/dl/
版本的选择
Windows平台和Mac平台推荐下载可执行文件版,Linux平台下载压缩文件版。
下图中的版本号可能并不是最新的,但总体来说安装教程是类似的。Go语言更新迭代比较快,推荐使用较新版本,体验最新特性。
安装
Windows安装
此安装实例以 64位Win10
系统安装 Go1.14.1可执行文件版本
为例。
将上一步选好的安装包下载到本地。
双击下载好的文件,然后按照下图的步骤安装即可。
Linux下安装
如果不是要在Linux平台敲go代码就不需要在Linux平台安装Go,我们开发机上写好的go代码只需要跨平台编译(详见文章末尾的跨平台编译)好之后就可以拷贝到Linux服务器上运行了,这也是go程序跨平台易部署的优势。
我们在版本选择页面选择并下载好go1.14.1.linux-amd64.tar.gz
文件:
wget https://dl.google.com/go/go1.14.1.linux-amd64.tar.gz
将下载好的文件解压到/usr/local
目录下:
tar -zxvf go1.14.1.linux-amd64.tar.gz -C /usr/local # 解压
如果提示没有权限,加上sudo
以root用户的身份再运行。执行完就可以在/usr/local/
下看到go
目录了。
配置环境变量: Linux下有两个文件可以配置环境变量,其中/etc/profile
是对所有用户生效的;$HOME/.profile
是对当前用户生效的,根据自己的情况自行选择一个文件打开,添加如下两行代码,保存退出。
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
修改/etc/profile
后要重启生效,修改$HOME/.profile
后使用source命令加载$HOME/.profile
文件即可生效。 检查:
~ go version
go version go1.14.1 linux/amd64
Mac下安装
下载可执行文件版,直接点击下一步安装即可,默认会将go安装到/usr/local/go
目录下。
检查
上一步安装过程执行完毕后,可以打开终端窗口,输入go version
命令,查看安装的Go版本。
Go 快速开发入门
Go 执行流程分析
1. 对源码编译在执行
.go文件–go build编译–>可执行文件(.exe或者其他)–运行–> 结果
- 用
go run
对源码执行
.go文件–go run 运行–> 结果
- 先编译生成可执行的文件 ,可将文件拷贝到没有go环境的机器运行
- 如果是 go run 源代码那么要在另一台机器运行也需要go环境
- 编译时,编译器会将程序运行的依赖库包含在可执行文件中,所以可执行文件变大了很多
编译:有了go源文件,通过编译器将其编译成机器可识别的二进制码文件
在该源文件目录下,通过go build 对hello.go文件编译。可以指定生成的可执行文件名,在windows下必须是.exe结尾
Go 开发注意事项
- Go源文件以go为扩展名
- Go应用程序的执行入口为main()函数
- Go语言严格区分大小写
- Go语言每条语句后不需要加分号
- Go时一条一条编译的,一行就写一条语句,不能把多条语句写在同一行
- Go定义的变量或者import的包如果没有使用到,代码不能编译通过
- 大括号都是成对出现
Go 语言转义字符
\t----制表符
\n----换行
\\-----\
\“-----”
\r-----回车
Go 语言注释
块注释:/* */
行注释://