文章目录
1. go语言简介
Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。Go 语言语法与 C 相近,但功能上有:内存安全,GC(垃圾回收),结构形态及 CSP-style 并发计算。
1.1 go语言特点
- 背靠大厂,google背书,可靠
- 天生支持并发(最显著特点)
- 语法简单,容易上手
- 内置runtime,支持垃圾回收
- 可直接编译成机器码,不依赖其他库
- 丰富的标准库
- 跨平台编译
1.2 go语言的应用领域
- 服务器编程
- 开发云平台
- 区块链
- 分布式系统
- 网络编程
2. go语言开发环境搭建
2.1 windows平台
个人使用采用的是window自身支持的wsl,适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境。
2.1.1 下载安装并配置环境变量
下载地址:https://golang.google.cn/dl/
,选择安装包点击下载即可
安装包下载完毕,在C盘下创建go的目录
安装go,这里注意,安装路径选择一个比较好找的路径,例如:c:/go
,其他安装都选择”下一步“即可。
安装完成后,把C:\go\bin
目录添加到环境变量
这里就可以在任何目录下使用go命令,在命令行输入 go version
查看版本,输出结果如下所示。
go version
go version go1.18.2 windows/amd64
2.1.2 配置go环境
set GO111MODULE="on"
set GOPROXY="http://goproxy.cn"
执行 go env
命令进行确认,如图所示
2.1.3 安装配置git
https://www.git-scm.com/download/
下载并安装,配置都选择【默认】即可
安装完成后,将 C:\Program Files\Git\bin
添加到环境变量里面去
在命令行输入 git version
测试,输出结果如下所示。
git version
git version 2.36.1.windows.1
2.1.4 goroot和gopath
goroot就是go安装的根目录,gopath就是go项目所在的路径,高版本go项目已经不再依赖gopath来管理项目,使用go mod来管理项目。
2.2 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.16.6 linux/amd64
2.3 Mac平台
下载可执行文件版,直接点击下一步安装即可,默认会将go安装到/usr/local/go
目录下。
上一步安装过程执行完毕后,可以打开终端窗口,输入go version
命令,查看安装的Go版本。
go version go1.16.6 darwin/amd64
3. go开发工具
golang的开发工具有很多,例如:
- vim
- sublime
- atom
- LiteIDE
- eclipse
- goland
- vscode(推荐)
3.1 使用goland开发go应用
goland是一款付费的、功能强大的golang集成开发环境,是Jetbrain公司的产品。下载地址:https://www.jetbrains.com/go/
goland非常智能,几乎不需要配置,安装即用。
3.2 使用vscode开发go应用
- 下载安装vscode
https://code.visualstudio.com/
- 下载安装插件,参考文档:
https://marketplace.visualstudio.com/items?itemName=golang.go
- 安装code runner运行脚本
3.2.1 安装插件
- go 插件
- code Runner 插件
3.2.2 测试
package main
import "fmt"
func main() {
fmt.Println("hello go")
}
执行效果如下
4. go常用命令
直接在终端中输入 go help
即可显示所有的 go 命令以及相应命令功能简介,主要有下面这些:
- build: 编译包和依赖
- clean: 移除对象文件
- doc: 显示包或者符号的文档
- env: 打印go的环境信息
- bug: 启动错误报告
- fix: 运行go tool fix
- fmt: 运行gofmt进行格式化
- generate: 从processing source生成go文件
- get: 下载并安装包和依赖
- install: 编译并安装包和依赖
- list: 列出包
- run: 编译并运行go程序
- test: 运行测试
- tool: 运行go提供的工具
- version: 显示go的版本
- vet: 运行go tool vet
5. golang开发vscode快捷键
快捷键位置
File->Preferences->Keyboard Shortcuts
常用快捷键
1. 行注释 ctrl + /
2. 块注释 shift+alt+a (可以修改为ctrl+shift+/)
3. ctrl+a 全选
4. ctrl+c 复制
5. ctrl+v 粘贴
6. ctrl+shift+k 删除行
7. ctrl+e查找文件
8. ctrl+shift+p 打开设置命令行
修改快捷键
- 打开快捷键
File->Preferences->Keyboard Shortcuts
- 双击要修改的快捷键
- 键盘输入想要使用的快捷键
快速生成代码片段
pkgm main包+main主函数
ff fmt.Printf("", var)
for for i := 0; i < count; i++ {
}
forr for _, v := range v {
}
fmain func main() {
}
a.print! fmt.Printf("a: %v\n", a)