一.下载地址

Go官方下载地址:https://golang.org/dl/

Go中文网:https://go.p2hp.com/go.dev/dl/

根据不同系统下载不同的包。

二.配置GOPATH

GOPATH是一个环境变量,用来表明你写的go项目的存放路径。

GOPATH路径最好只设置一个,所有项目代码都放到GOPATH的src目录下。

在window下设置:

  • 找到环境变量:我的电脑->属性->高级系统设置->环境变量
  • 检查你的电脑是否存在GOPATH(如果没有新建一个,同时新建一个你存go代码的目录),并且设置值为你要存的go代码的目录

  • 在PATH环境变量下添加go的安装目录和GOPATH目录

2.1 go项目目录

在进行Go语言开发时,我们的代码总是回保存在$GOPATH/src目录下,在工程经过go build,go install或者go get等指令之后,会将下载的第三方源代码文件放在$GOPATH/src目录下,产生的二进制可执行文件放在$GOPATH/bin目录下,生成的中间缓存文件会被保存在$GOPATH/pkg目录下。

如果我们使用版本管理工具(比如:git)来管理我们的项目代码时,我们只需要添加$GOPATH/src目录的源代码即可,bin和pkg目录的内容无序版本控制。

2.2 适合个人开发者

我们知道源代码都是放在GOPATH的src目录下,我们可以按照下图来组织我们的代码:

2.3流行的项目结构

Go语言也是通过包来组织代码文件,我们可以引用别人的包,也可以发布自己的包,但是为了防止不同包的项目名相同,我们通常使用顶级域名来作为包名的前缀,这样那就不同担心项目名冲突的问题了。

因为不是每个个人开发者都拥有自己的顶级域名,所以目前流行的方式是使用个人的github用户名来区分不同的包。

举个例子:

张三和李四都有一个名叫studygo的项目,那么这两个包的路径就会是:

import “github.com/zhangsan/studygo” import “github.com/lisi/studygo”

以后我们从github上下载别人的包的时候,如:

go getgithub.com/jmoiron/sqlx

那么,这个包会下载到我们本地GOPATH目录下的src/github.com/jmoiron/sqlx。

2.4 适合企业开发者

三. 编辑器

3.1 安装go插件

启动vscode,选择插件搜索go选择Go for visual studio code 插件安装即可。

3.2vscode安装Go语言开发工具包

这里说的是使用vscode来安装Go语言开发工具包。在Go语言开发的时候为我们提供诸如代码提示,代码自动补全等功能。

在vscode中按下Ctrl+shift+p快捷键,在输入框中填入go:install,下面会自动搜索命令。选择箭头指向的那个。

选择全部,点击确定。

vscode会下载安装图列工具,但是由于国内网络环境基本有的工具会安装失败。

解决办法:设置代理。

C:\Users\Administrator> go env -w GO111MODULE=onC:\Users\Administrator> go env -w GOPROXY=https://proxy.golang.com.cn,directC:\Users\Administrator>go versiongo version go1.22.1 windows/amd64

3.3 修改vscode终端cmd启动

在运行代码时需要终端运行,有的vscode默认终端是powershell,下面介绍修改成cmd终端。

在文件->首选项->设置中打开settings页面。

四. 第一个go程序

  • 进入gopath环境变量地址下的src目录
  • 在src目录下创建一个hello目录,在hello目录下创建一个main.go文件
  • 使用vscode编写代码

上面的报错解决方法来源:配置 Visual Studio Code for Go 开发 – Go on Azure | Microsoft Learn

在go文件所在文件内创建另一个用于创建根控制器的文件夹(文件夹名随意,这里是sample-app)

然后使用终端进入对应目录,使用命令go mod init sample-app之后便会生成go.mod文件,然后就可以正常使用了

  • 在hello目录下终端执行go build

go 编译器会去GOPATH的src目录下查找你要编译的hello项目,编译得到的可执行文件会保存在执行编译命令的当前目录下。

  • 在终端执行可执行文件

还可以使用-o参数来指定编译后的可执行文件名字。

go build -o hello.exe