go 语言开发1 环境配置和语言基础
Go 语言环境配置
windows 环境变量:
设置 GOROOT (安装路径),GOPATH(工程目录)
Path 中加入 %GOROOT%/bin 和 %GOPATH%/bin
mac 环境变量:
在~/.bash_profile中添加
GOROOT=/usr/local/go export $PATH:$GOROOT/bin GOPATH=/Users/username/gopath export $PATH:$GOPATH/bin
source ~/.bash.profile
常用Go 指令
go version 查看版本,检查安装
go evn 查看环境变量配置
go get -u github.com/xxx/xxx 下载资源包(-u 强制使用网络下载)
go build 编译
go install 编译并安装
go run 编译并运行
更多用法 https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/01.3.md
使用 Glide 管理依赖
glide init 初始化
glide up 依赖升级
glide install 依赖安装
glide get 类似go get
Goland 环境配置
Go 语言学习资料
Go 语言文档 https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/directory.md
Go Web 开发文档 https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/preface.md
其他总结
- 包
- 同一个包中的函数不可重名
- package包名可以和文件夹不同名,import时用文件夹名,引用时用包名
- 依赖管理
- godep 最早
- dep 官方项目,刚起步
- glide 新,功能全 https://segmentfault.com/a/1190000013016957
- 乱码: 先在cmd里面执行 chcp 65001
- glide 在 windows 上的权限 bug: https://studygolang.com/topics/4905
- govendor 新,功能全
- govendor init
- govendor fetch github.com/xxx
- sync
- web开发
- web框架:
- gin 效率高;
- beego 国内项目、star多,太庞大
- orm框架:
- xorm 国内项目、文档全、响应快;
- gorm 文档少、star多;
- web框架:
- 需要了解的语法约定
- 首字母大小写区分可见性:大写字母开头的函数、变量等默认是public,否则是private
- iota 枚举类型
- defer 来释放资源,提高代码可读性
- goroutine 天然支持并发编程
语法:
java 使用 switch 时,需要在每个 case 后 加 break,否则会执行后面所有语句;go 使用 switch 时不需要加 break。