Go语言02-开发环境与VScode配置
0x00 安装与环境变量
如果下面这些看不懂,不用着急,等学到包概念就明白了



1、安装Go语言
下载地址,下载msi后一直下一步就行了。或者下载zip文件包,然后解压到自己新建的一个文件夹中,只不过需要配置环境变量。
Go官网下载地址:https://golang.org/dl/
Go官方镜像站(推荐):https://golang.google.cn/dl/


go version //只要是版本是1.11往后就可以

2、配置Go PATH
GOPATH是一个环境变量,用来表明你写的go项目的存放路径(工作目录)。
GOPATH路径最好只设置一个,所有的项目代码都放到GOPATH的src目录下。
1、新建一个D:\Golang,我之前安装的go不在这个文件夹哦!在D:\go,两者是不一样的。
2、配置GOPATH


3、之后创建这三个目录:bin、pkg、src。建立这三个目录是为了以后的编辑和安装插件方便

4、将D:\Golang\bin添加到PATH这个环境变量后面

之后会自动将你的D:\Go\bin直接加入到环境变量

5、测试
go env //查看go相关的环境变量

步骤总结
1、在自己的电脑上新建一个目录D:\Golang(存放我编写的Go语言代码)
2、在D:\Golang下新建三个文件夹,分别是bin、src、pkg
3、在环境变量里面,新建一项:GOPATH:D:\Golang
0x01 Go项目目录结构介绍
刚刚我们创建了三个文件夹,这三个文件夹都是什么意思呢?

1、个人开发架构

2、公司流行架构
推荐使用这个,在src目录下面新建一个目录名为github.com


3、企业流行架构

0x02 VScode编辑器安装
Go采用的是UTF-8编码的文本文件存放源代码,理论上使用任何一款文本编辑器都可以做Go语言开发,这里推荐使用VS Code和Goland。 VS Code是微软开源的编辑器,而Goland是jetbrains出品的付费IDE。
我们这里使用VS Code 加插件做为go语言的开发工具。
1、VS Code介绍
VS Code全称Visual Studio Code,是微软公司开源的一款免费现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,支持插件扩展,支持 Win、Mac 以及 Linux平台。
虽然不如某些IDE功能强大,但是它添加Go扩展插件后已经足够胜任我们日常的Go开发。
2、下载与安装
VS Code官方下载地址:https://code.visualstudio.com/Download记得科网。
三大主流平台都支持,请根据自己的电脑平台选择对应的安装包。点击下载后稍微等一会儿就能下了。

3、安装中文插件

4、安装Go插件

5、修改字体大小

6、配置Go代理,以及安装相应辅助功能
在座Go语言开发的时候为我们提供诸如代码提示、代码自动补全等功能。
在此之前请先设置GOPROXY,打开终端执行以下命令:
go env -w GOPROXY=https://goproxy.cn,direct

随后重启一下VScode编辑器,之后按下Ctrl+Shift+P,这个时候VS Code界面会弹出一个输入框,如下图:

我们在这个输入框中输入>go:install,下面会自动搜索相关命令,我们选择Go:Install/Update Tools这个命令,按下图选中并会回车执行该命令(或者使用鼠标点击该命令)

在弹出的窗口选中所有,并点击“确定”按钮,进行安装。

喝口水,等待所有工具都安装成功,如下图所示: 
当我们编辑时,去掉这个import "fmt",保存的时候就会自动补全这条语句。说明我们安装成功了。

7、VScode颜色标识
红色波浪线:错误
黄色波浪线:没有引用
绿色波浪线:不规范,不推荐
0x03 VScode配置技巧
基本配置
【1】配置代理
不需要重启,即时生效,十分强大


【2】将VScode的代码推送到Github上
1、左下角设置,选择使用github账号,可以进行关联。


2、你的项目肯定在一个文件夹内,在此文件夹内,右键git bash或者终端(前提你自己已经本地安装配置好git加入环境变量了),输入git init,则此文件夹内会生成一个 .git文件夹,此时说明你这个项目的文件已经被控制了,在这之前我已经用VScode直接打开文件夹的方式打开了项目,现在打开vscode会看到,你项目所有文件变色了如下图;


3、上面git init只是用来解释一下.git到底是什么意思。
现在说一下完整操作:在自己的项目文件夹中,打开终端,依次输入下面这几行命令来创建Github库,或者自己手动在github上创建库也行,都可以。
echo "# StudyGo" >> README.md #添加readme,md,随便写几句话
git init #初始化目录
git add main.go #添加main.go文件到push名单
git commit -m "第一个注释说明"
git branch -M main #分支为主分支,名字随便写
git remote add origin https://github.com/sukusec301/StudyGo.git #这里同上,就是库名
git push -u origin main #提交到你的仓库,main是主仓库名,可以更改
之后会让你验证你的账号,建议选择code验证,不要用URL验证,因为代理的问题。设置成功后就能看到自己的代码了

4、之后在VScode这个文件夹中新建一个文件,分支这里就会很敏感地出现。这个提示就是说明有了几个文件变动的意思。

5、选择新建的文件,然后点击上面的对勾,表示彻底保存。


6、最后一步,就是点击三个点,然后选择推送即可在github上看到自己写的代码。

7、总结与经验
- 如果VScode上传不上去代码,使用终端上传;终端记得配置代理。
- 在VScode任意修改以及删除代码,新建文件夹都没任何毛病,随便写都能同步,十分给力。
- 如果删除或者修改代码实在推送不成功,那就多试几次,只能这样了。

【3】下载更新
VScode最让人诟病的一点,就是无法自动更新。需要自己下载安装包压缩包,然后解压到VScode文件夹中,不过打开后不需要配置其他的东西,就是更新了版本而已,之前的各种配置并没有任何影响。

快捷键与小技巧
1、github1s
在github项目URL中,在hub后面添加1s,即可展示出用VScode显示的源码

或者直接在这个页面按下句号,只不过这个会慢一些
2、alt+鼠标左键多行操作
类似植物大战僵尸一种种一排的那个模式,只不过这里变成了光标。

3、ctrl+/ 与shift+alt+a
ctrl+/

shift+alt+a

4、按住control键左键点击关键词


5、ctrl+` 打开终端

6、ctrl+\ 向右拆分编辑器 按住alt点击是向下拆分

7、缩进tab与取消缩进shift+tab
8、放大、缩小视图:ctrl+ + ctrl+ -
9、其他快捷键设置

10、高级快捷命令设置
1、ctrl+shift+P 注意,这个快捷键与图床PicGo的快捷上传相冲突,先将其关闭

2、再次按下ctrl+shift+P,输入snippet,选择Configure User Snippets

3、选择下方的go,可以看到是一个文件,即go.json


4、在这个文件中可以随意设置自己喜欢的快捷指令,注意后面逗号等格式,严格定义
$即最后光标停止的位置;

5、在代码那里输入相应的快捷指令,即可出现效果。即:将prefix的内容替换成body的内容。

9、使用VScode编辑Go,千万不要用Go mod模式
VScode不支持Go module,Go module就是它最新的版本控制。用了之后就会特别卡,千万不要开启。
好用的插件
ToDo Tree
我们打开一个文件夹,想要继续上次的工作,就很麻烦,这时候如果有一个定位功能就会很方便,这就是ToDo Tree的功能。

配置
1、打开设置,点击右边这个图标,就会打开settings.json文件

2、将下面这段代码复制到setting.json内容后面,注意上面有个逗号,别忘了加

"todo-tree.tree.showScanModeButton": false,
"todo-tree.filtering.excludeGlobs": ["**/node_modules", "*.xml", "*.XML"],
"todo-tree.filtering.ignoreGitSubmodules": true,
"todohighlight.keywords": [
],
"todo-tree.tree.showCountsInTree": true,
"todohighlight.keywordsPattern": "TODO:|FIXME:|NOTE:|\\(([^)]+)\\)",
"todohighlight.defaultStyle": {
},
"todohighlight.isEnable": false,
"todo-tree.highlights.customHighlight": {
"BUG": {
"icon": "bug",
"foreground": "#F56C6C",
"type": "line"
},
"FIXME": {
"icon": "flame",
"foreground": "#FF9800",
"type":"line"
},
"TODO":{
"foreground": "#FFEB38",
"type":"line"
},
"NOTE":{
"icon": "note",
"foreground": "#67C23A",
"type":"line"
},
"INFO":{
"icon": "info",
"foreground": "#909399",
"type":"line"
},
"TAG":{
"icon": "tag",
"foreground": "#409EFF",
"type":"line"
},
"HACK":{
"icon": "versions",
"foreground": "#E040FB",
"type":"line"
},
"XXX":{
"icon": "unverified",
"foreground": "#E91E63",
"type":"line"
}
},
"todo-tree.general.tags": [
"BUG",
"HACK",
"FIXME",
"TODO",
"INFO",
"NOTE",
"TAG",
"XXX"
],
"todo-tree.general.statusBar": "total",
3、之后只要输入//关键词就可以看到效果了,如下图

VSCode Great Icons

Bracket Pair Colorizer

filesize
可以显示文件大小,不过可惜的是不能显示文件夹大小

vscode-fileheader
快捷键ctrl+alt+i在文件开头自动输入作者信息和修改信息等内容。光标在任意位置都可以使用热键。

vscode-backgroud / background
以前叫前者,之后叫后者。具体使用参考,我这里就不做美化了。https://github.com/shalldie/vscode-background
wakatime
记录敲代码的时间,如果你只是打开了VScode并没有任何编辑,是不会被记录时间的。


Markdown Preview Enhanced
当使用vscode编写markdown的时候,可以用这个。

Settings Sync(不怎么好用,以后再研究)
可以帮助你在不同的设备之间同步vscode所有的配置、插件。虽然配置有好几个步骤,但是一旦配置好了之后使用非常的方便,只需要记住快速上传和快速下载的快捷键即可。甚至你可以选择默认上传、默认下载,保证所有设备的开发环境同步。
shift+alt+u:强制上传
主题插件
自行搜索下载对比喜欢的即可



浙公网安备 33010602011771号