golang 入门学习
优点:高效率,静态类型,性能更强,垃圾回收,并发支持更强大。总结起来就是C一般的性能,java般的安全。
缺点:新的语言,没有java多年的积累
我在2019年写下这篇入门的文章,2022年又重新把这篇文章开放,我觉得一直在驱动我从python切换到go的一个主要原因是我受够了环境的折磨,我不想每到一个新的环境就要重新安装一个解释器了。如果使用go编译成可执行文件,环境的问题就得到解决了。为什么不是C呢?C语言也可以编译成二进制啊,因为go不需要使用者处理垃圾回收。C申请的内存一定要记得释放,go几乎没有这方面的困扰。
golang 安装
mac osx: brew install go
windows: 下载安装包
golang hello world例子
package main
import "fmt"
func main() {
fmt.Println("Hello, world")
}
基本命令
go fmt 格式化代码
go version 查看版本
go build 编译
go run 编译并运行
go env 查看相关环境变量
go最简单的生命周期
go代码的组织package import
package不太好理解。
import引入另一个模块很好理解。
有两种风格:
import "xxx1"
import "xxx2"
或者
import (
"xxx1"
"xxx2"
)
我为什从python切换到go?
因为我不想再安装python了。
如果是本机,但是我我还要在其他机器上执行,这样python太痛苦了。