• 【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 (D:\go\src\user)
    要在D:\go\src目录下新建一个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)
    }
    
  • 相关阅读:
    java经典面试题并发篇(持续更新)
    【智能优化算法】基于蝙蝠优化算法求解多目标优化问题附matlab代码
    ZYNQ UltraScale MPSOC,使用PL端AXI_UART16550IP核,且在PS端控制下实现RS485通信-----轮询方式
    【算法 | 数论 No.1】AcWing1246. 等差数列
    mysql中事务的基本介绍,提交事务和事务回滚的基本介绍,事务的隔离性的详细说明
    Lazada双11大促玩法规则解读,2022备战清单来袭!
    Vue中如何进行跨域处理
    MongoDB - 索引知识
    【全国计算机二级】python的jieba模块,你真的了解吗?
    BigDecimal 详解
  • 原文地址:https://www.cnblogs.com/PaturNax/p/16494362.html