【Go语言】(一)环境搭建与了解VScode工具
视频链接(p1~p8):
golang入门到项目实战 [2022最新Go语言教程,没有废话,纯干货!]
参考链接:
用vscode开发go的时候,安装go包报错:connectex: A connection attempt failed because the connected party did not
一、安装与熟悉工具
视频一开始讲go语言有什么特点之类的,完全不用管,刚开始学也记不了这些。
语言环境安装
安装到自己喜欢的位置,接着设置环境变量:安装的位置/bin,我是在D:/Go/

到高级属性设置


可以看到它自动在我们的用户变量弄了GOPATH,这是以前放项目的地方,但是弄了模块化后就没必要了
找到系统变量的Path

点击编辑,发现它也是自动帮我们设置好了:

查看版本:

管理员模式打开Power Shell,设置go的环境变量(后面发现这里弄的环境对VScode没影响):

输入:
$env:GO111MODULE="on"
$env:GOPROXY="http://goproxy.cn"
自行安装git Bash:
这个是网站链接
https://git-scm.com/downloads
安装VScode工具
这个也是网站链接
https://code.visualstudio.com/download
自行安装好后就配置环境:


第一个GO程序:Hello World!
选自己喜欢的位置,这个就是未来VScode的工作区了,而CMD 命令行运行如下:
mkdir go
cd go
mkdir go_prod
go env -w GO111MODULE=on
go mod init go_prod
code ./go_prod
新建一个go后缀的文件,运行以下程序
package main
import "fmt"
func main(){
fmt.Println("Hello World!")
}

结果如下:

VScode的终端运行 GO常用命令

运行命令1:
go build 实际存在可运行出结果的go文件

接着就生成一个exe后缀的文件,运行它就行了

运行命令:
./main.exe
运行命令2:
go run 实际存在可运行出结果的go文件
直接产生结果:

格式化命令:
格式化的意思:把代码排到令一般人觉得舒服并易于理解的位置。
如果只是对于单个文件的话,这个命令相较于自己在VScode安装一个格式化的插件效果不太好,多个文件就好用了。
go fmt
下载包命令:
举例:我想下个mysql的包
到官网的搜索栏,选个mysql,拿到下载地址。


跑回VScode的终端栏,输入命令如下:
go env -w GOSUMDB=off
go env -w GOPROXY=https://goproxy.cn,direct
go get github.com/go-sql-driver/mysql
安装成功提示:

查看VScode的快捷键

常用的快捷键:
行注释 Ctrl + /
块注释 shift + Alt + a
删除行 Ctrl + shift + k
查找文件 Ctrl + e
打开设置命令行 Ctrl + shift + p
快速生成代码
命令1:生成主函数
在代码那栏输入:
pkgm

命令2:生成输出函数
fp

代码自动补全和选择导入包
参考链接:vs code golang代码自动补全
由于VSCode的不停更新,很多配置的位置发生了变化,我操作也是云里雾里,可能我的步骤会有些多余,由于之前就已经输入了如下的命令:
go env -w GOPROXY=https://goproxy.cn,direct
所以我先是输入“ctrl + shift + p”,再输入go:install/update,点击它

接着我就有如下这好几个选项,全部勾上,有的博客会说安十多个,可能是因为版本不一样吧,之后是一定会安装成功的,如果你跟着我之前的操作的话:

安装好后,我就到这里面:

在选择栏那里输入 go,再随便点击任何一个setting.json:

在上面的editor.quickSuggestions加上:
"go.useCodeSnippetsOnFunctionSuggest": true

重启VSCode,我们拿这个案例进行测试:
你现在看到我这里会提示你没导入fmt这个包

之后鼠标移动到fmt,会有个按键,点击它,会有提示Add import “fmt”,这里点上,它就会自动帮你补上:

命令3:输出对应变量
先定义变量,顺便附上值:
s:="hello"
接着输入
s.pr
VScode就会提示自动补全最终如下:

其他的快捷命令
ff fmt.Printf("", var)
for for i := 0; i < count; i++ {}
forr for _, v := range v {}
fmain func main() {}
Go如何调用自建包与模块
package user is not in GOROOT (c:\go\src\user)
在生产环境下新建一个user包,在包里定义函数
src/user/user.go
//定义包名
package user
//定义hello函数
func Hello() string{
return "Hello"
}
go/main.go:调用包
package main
import ("fmt"
"user")
func main(){
s:=user.Hello()
fmt.Printf("s: %v\n",s)
}
【Go语言】(一)环境搭建与了解VScode工具的更多相关文章
- windows下的go语言的环境搭建和初探
闲话不说,直入主题. 1.准备工具 a.windows下的Go语言开发安装包 官方下载地址:https://code.google.com/p/go/downloads/list b.Go语言中文官网 ...
- 【Apache Pulsar】Apache Pulsar单机环境及Go语言开发环境搭建
0x01 简介 Apache Pulsar是一个开源的分布式发布-订阅消息系统,与Kafka类似,但比后者更加强大.Pulsar最初由Yahoo开发并维护,目前已经成为Apache软件组织的一个孵化子 ...
- R语言开发环境搭建
R语言开发环境搭建 一.环境 Win7 64bit系统 二.R软件下载 R 3.5.2 for Windows,官网:https://www.r-project.org/ RStudio 1.1.46 ...
- Java 学习笔记 第一章:Java语言开发环境搭建
第一章:Java语言开发环境搭建 第二章:常量.变量和数据类型 第三章:数据类型转换.运算符和方法入门 1.Java虚拟机——JVM JVM(Java Virtual Machine ):Java虚拟 ...
- go语言环境搭建以及配置VSCode
Go语言学习笔记(环境安装)-day01 Go语言运行环境安装 下载Go安装包 安装包地址 安装Go语言运行环境 直接在下载好的目录双击运行*.msi的可执行文件,下一步进行安装,安装的目录最好是 ...
- 02.Go语言开发环境搭建(新版)
安装Go语言及搭建Go语言开发环境 注意:Go语言1.14版本之后推荐使用go modules管理以来,也不再需要把代码写在GOPATH目录下了 下载 下载地址 Go官网下载地址:https://go ...
- Windows下Go语言的环境搭建
在本地搭建了一个开发GO语言的开发环境,给大家分享一下用go语言写的第一个hello world的过程,希望对大家有所帮助. 1.想写GO语言首先得下载go语言的开发包 官方下载地址:https:// ...
- Go语言开发环境搭建
1.Go的安装 (1)下载go安装程序 下载地址:https://golang.org/dl/ (墙内下载地址http://www.golangtc.com/download),如果是您的系统是win ...
- 手把手教你Windows下Go语言的环境搭建
1.想写GO语言首先得下载go语言的开发包 官方下载地址:https://code.google.com/p/go/downloads/list 我用的是Win7 64位的操作系统,截图如下: 2.把 ...
随机推荐
- SpringCloud Gateway 漏洞分析 (CVE-2022-22947)
背景 SpringCloud 是Spring提供的微服务实现框架,其中包含网关.配置中心和注册中心等内容,网关的第一代实现为zuul,第二代实现为Gateway,提供了更好的性能和特性. 网关可以提供 ...
- python模块,邮件推送交换机error级别以上log,django前端展示
前情概要 原syslog服务器只收集不推送日志,可以实时展示,服务器在海外内网,办公网做的有分流,到日志服务器的流量送到香港,其余流量国内,疫情期间在家办公,每次连接需要拨海外l2tp,挂着梯子访问国 ...
- 【mq】从零开始实现 mq-12-消息的批量发送与回执
前景回顾 [mq]从零开始实现 mq-01-生产者.消费者启动 [mq]从零开始实现 mq-02-如何实现生产者调用消费者? [mq]从零开始实现 mq-03-引入 broker 中间人 [mq]从零 ...
- data:image字符转byte[]
var data = "data:image/bmp;base64,Qk3aHwAAAAAAADYAAAAoAAAAZAAAABsAAAABABgAAAAAAKQfAAAAAQAAAAEAA ...
- vue2 sass主题一键修改功能
1.先创建一个 _theme.scss文件 作为各类主题颜色的整理 $themes: ( light: ( //字体 font_color1: #414141, font_color2: white, ...
- Spring Boot整合Swagger报错:"this.condition" is null
前段时间看到群里有吐槽swagger整合问题,当时没仔细看,总以为是姿势不对. 这两天正好自己升级Spring Boot版本,然后突然出现了这样的一个错误: Caused by: java.lang. ...
- 广义SAM
参考 还有首先你要会SAM吧~ 用途 相比与单串SAM,广义自动机能存储的是多个字符串. 有两种写法,第一种是离线利用trie树结构,第二种是在线伪广义SAM 离线+Trie 首先构建出trie树. ...
- Keil软件下用Jlink无法识别芯片
Keil软件下用Jlink无法识别芯片 硬件:正点原子探索者 软件:keil J-Link固件版本:V9.40 J-Link V6.94b驱动:下载地址 跟着视频教程走,发现的第一个问题就是这个,记录 ...
- 【摸鱼神器】UI库秒变LowCode工具——列表篇(二)维护json的小工具
上一篇介绍了一下如何实现一个可以依赖 json 渲染的列表控件,既然需要 json 文件,那么要如何维护这个 json 文件就成了重点,如果没有好的维护方案的话,那么还不如直接用UI库. 所以需要我们 ...
- 互联网公司目标管理OKR和绩效考核的误区
最近看了一篇关于「谷歌放弃OKR,转向全新的GRAD系统」的文章,我转到了研发效能DevOps的微信群里,结果引起了大家热烈的讨论,正好我们也在使用 OKR,所以也来谈谈我的理解以及我们应用起来的实际 ...
