可可西

Go简介

Go(又称Golang,wiki  中文)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的开源编程语言(github),支持windows、linux、macOS等操作系统。

 

安装SDK

在运行和调试go脚本之前,需要安装SDK包(当前最新的go版本为1.13.5    windows版本:go1.13.5.windows-amd64)。

安装程序会将go脚本解释器等相关文件复制到目标目录中,最后会将SDK包的bin目录添加到系统环境变量%Path%中,并新增用户级环境变量%GOPATH%=%USERPROFILE%\go,并将其该路径添加到用户级环境变量%path%

注:%GOPATH%是用来存放go语言相关的第三方工具或插件

 

安装Delve调试器

go get -v github.com/go-delve/delve/cmd/dlv

注1:以上命令会调用git.exe从github上克隆Delve的源码,并放置在%GOPATH%\src\github.com\go-delve\delve目录中

注2:下载dlv.exe调试器并放置在%GOPATH%\bin目录中

此时就可以用dlv对go脚本命令行调试了   命令如:dlv debug d:\main.go

b main.go:4  // 在main.go的第4行放置一个断点

bp // 查看断点信息

bt  // 打印堆栈

n  // 执行下一句代码(相当于vs中的F10

c  // 继续执行(相当于vs中的F5

exit // 退出调试

locals  // 打印当前局部变量

p nVar1  // 打印nVar1变量的值

ls  // 显示源码


使用跨平台vsCode来编辑和调试go脚本

除了安装上面的go语言SDK和Delve调试器外,还需要在vsCode中安装Microsoft的go插件:Rich Go language support for Visual Studio Code  (注:github在这里,可在vscode的Extensions面板中搜索go找到它然后直接安装)

还可安装其他插件来增强vsCode中go语言的功能   详见:Go tools that the Go extension depends on

 

名称 功能 github链接
gocode 代码自动补全 https://github.com/mdempsky/gocode
go-outline 在当前文件中查找 https://github.com/ramya-rao-a/go-outline
go-symbols 在项目路径下查找 https://github.com/acroca/go-symbols
gopkgs 自动补全未导入包 https://github.com/uudashr/gopkgs
guru 查询所有引用 https://godoc.org/golang.org/x/tools/cmd/guru
gorename 重命名符号 https://godoc.org/golang.org/x/tools/cmd/gorename
goreturns 格式化代码 https://github.com/sqs/goreturns
godef 跳转到声明 https://github.com/rogpeppe/godef
godoc 鼠标悬浮时文档提示 https://godoc.org/golang.org/x/tools/cmd/godoc
golint 就是lint https://godoc.org/golang.org/x/lint/golint
gomodifytags 修改结构体标签 https://github.com/fatih/gomodifytags
goplay 运行当前go文件 https://github.com/haya14busa/goplay
impl 新建接口 https://github.com/josharian/impl
gotype-live 类型诊断 https://github.com/tylerb/gotype-live
gotests 单元测试 https://github.com/cweill/gotests
go-langserver 语言服务 https://github.com/sourcegraph/go-langserver
filstruct 结构体成员默认值 https://github.com/davidrjenni/reftools/tree/master/cmd/fillstruct

 

posted on 2020-01-06 14:58  可可西  阅读(757)  评论(0编辑  收藏  举报

导航