最近搞自己的网站时突然想起来很多上学时的事,那会美国总统还是奥巴马,网页课教的是DreamWeaver跟Photoshop,其他语言像PHP、Java8、Python都有学一点,讲究一个所见即所得。虽然是信管专业那时和斌桑班长对新语言很感兴趣,现在准备将这些东西再从新学习一遍。
Golang是Google公司在2007年开始开发的一种静态强类型、编译型语言。Go语言被设计成一门简单、高效且可靠的编程语言,旨在解决大规模网络服务和分布式系统开发中的复杂性问题。Go语言结合了动态语言的开发速度和C/C++等编译型语言的性能与安全性,提供了强大的网络编程和并发编程支持。
Golang中文网下载地址:Go下载 - Go语言中文网 - Golang中文社区 (studygolang.com)
我下载的 .msi 格式,下载后直接安装在一个顺眼的地方,安装完成后将Go文件夹里bin文件夹的存储路径添加到环境变量,在安装时会自动生成一个用户变量GOPATH.
随后使用 win + r 打开 amd,在终端输入:
go version
Golang安装成功,随后再输入以下代码查看Golang的环境变量:
go env
之后打开VScode,下载 Go 和 Code Runner 插件,新建一个文件夹,里面在新建三个文件夹
- src目录:用于以代码包的形式组织并保存Go源码文件。这些源码文件包括库源码文件、命令源码文件和测试源码文件。所有的Go源代码都应该放在这个目录下,这是Go命令行工具的一个强制规则。
- pkg目录:用于存放经由go install命令构建安装后的代码包(包含Go库源码文件)的“.a”归档文件。与GOROOT目录下的pkg功能类似,区别在于,工作目录中的pkg目录专门用来存放用户代码的归档文件。这个目录无需手动创建,如果必要,Go命令行工具go mod init 在构建过程中会自动创建。
- bin目录:在通过go install命令完成安装后,保存由Go命令源码文件生成的可执行文件。这个目录也是自动创建的,无需手动创建。所谓命令源码文件,就是可以独立运行,可被gobuild或goinstall命令转换成可执行文件。
- 从Go 1.11开始引入的Go模块改变了这一做法,不再需要显式地设置这些目录,因为模块提供了更好的依赖管理和构建机制,可以将代码直接放在工作区的根目录下。
对于使用Go模块的项目需要,在环境变量中加入 GOPATH 指向工作目录 ,但是从Go 1.14版本开始,GOPATH的默认值已经足够好,通常不需要显式设置。
设置好后在VScode终端输入:
go mod init 项目导入路径(cd到新建go项目文件夹的上一级文件夹使用)
这个路径会是你的代码仓库的URL或者是你的项目的导入路径。例如项目托管在GitHub上,并且你的用户名是GGBond,项目名是GGBoy,那么你可以使用github.com/GGBond/GGBoy
作为模块路径。
如果只是想在本地使用一个简单的名称,可以
go mod init GGBoy
随后便在文件夹生成 go.mod 文件
有些情况需要在终端输入:
set GO111MODULE = on
安装GO语言服务器gopls,用于编译静态文件
go install golang.org/x/tools/gopls@latest
这时可以新建一个 .go 文件,在里面写入:
package main
import "fmt"
func main() {
fmt.Printf("hello world")
}
点击即可运行。
可以使用 go build
来构建你的项目,构建的可执行文件默认会在当前目录下创建。不再需要关心bin
目录,因为Go工具会处理这些细节。
go build -o GGBoy GGBond/BigDick.go
需要添加其他依赖项的话,可以使用 go get
go get github.com/some/dependency
大概的结构
BigDick/
├── go.mod
├── main.go
└── ggboy/
└── ggboy.go