前端视角下的Go语法学习:创建 Go 项目

今日话题

使用 GoLand 创建 Go 项目

作者:

时间:2024年6月20日 17时16分14秒

主线任务

一、GoLand 创建项目

1、点击 "new Project" 按钮

2、已经有下载过两个 Golang SDK 版本,选择版本创建即可~

3、如果没有下载过Golang SDK,或者项目中需要不同版本,则可以点击 "Download" 按钮

4、等待一小会时间就可以进行 Golang SDK 版本选择 ,本次操作选择 go.1.22.0 作为演示

存放地址选择了默认地址:C:UsersDELLgo

5、确认之后,再修改代码存放地址:

6、点击创建,会得到一个 go.mod 文件,到这里 go 项目就算创建完毕

二、手动命令创建项目

1、创建 demo-hello-world 文件夹

复制代码
mkdir demo-hello-world

2、声明 go.mod 文件

复制代码
go mod init demo-hello-world

3、这种方式创建的项目 默认会用电脑的sdk,使用编辑器的话可以自己选择 sdk ,当然其实这些都是可以直接在 go.mod 文件中进行调整的

4、当然,为了研究 我修改了下载 1.22.5 版本,不过目前官方最新是 1.22.4 所以给我报错了,这很正常

支线任务

一、go.1.22.0 是否会本地下载?

在上面演示中,选择了 go.1.22.0 创建的项目,好奇是否会下载 go.1.22.0 SDK在本地呢?

打开文件夹找到存放地址 C:UsersDELLgo,打开之后发现确实存在了 SDK 版本

二、go.mod 文件作用?

go.mod 文件是 go 项目依赖管理文件,相当于前端的 package.json,也是Java项目中Maven的pom.xml

1、生成 go.mod 文件

复制代码
go mod init demo-hello-world

2、从上面的命令不难看出:

  • go 是 go 安装的 sdk
  • mod 就是 mod 文件的意思,连起来这里其实是go提供出来的一个命令叫 go mod (和前端脚手架一样)
  • init 初始化的意思
  • 这里的 demo-hello-world 指的是模块的意思,这里后续再进一步了解 TODO

前端生成 package.json 方式:

复制代码
npm init -y
  • 这里的 npm 对应的就是 go
  • init 对应 init
  • 不过前端这边不用指明是 package.json 文件 前端现在默认都是这个依赖
三、go sdk 还提供了哪些 api

1、目前我们学会了使用 go mod 用来生成 go.mod 文件

复制代码
go mod init demo-hello-world

2、还有 go sdk 还提供了哪些 api 呢,这里先做一个了解,后续用到再深入:

3、不过目前都还没有用上,暂时没有必要深入的去了解,只有用到了再学习会事半功倍

不过还是先列举出来常用的命令,以下是一些常用的命令和它们的功能:

  1. go run:编译并运行一个 Go 源码文件或一组文件。

    go run main.go

  2. go build:编译包和依赖项。

    go build

  3. go install :编译并安装包和依赖项到 $GOPATH/bin 目录下(或者 $GOBIN,如果设置了)。

    go install

  4. go clean:移除当前源码包和关联的目标文件。

    go clean

  5. go test:运行测试文件。

    go test

  6. go get:下载并安装指定的远程模块包。

    go get example.com/module

  7. go mod init :初始化一个新的模块,创建 go.mod 文件。

    go mod init module-name

  8. go mod tidy:整理和移除未使用的依赖。

    go mod tidy

  9. go mod vendor:将依赖项复制到本地 vendor 目录。

    go mod vendor

  10. go mod download:下载模块的依赖项。

    go mod download

  11. go mod edit:编辑模块的 go.mod 文件。

    go mod edit

  12. go mod graph:打印模块依赖图。

    go mod graph

  13. go mod verify:校验依赖的正确性。

    go mod verify

  14. go mod why:解释为什么需要依赖。

    go mod why package-name

  15. go env:查看当前 Go 环境变量。

    go env

代码仓库

https://github.com/chuxin-cs/go-demo/tree/master/demo-env

往期内容

点击链接查看:https://www.yuque.com/chuxin-cs/it/ge9wybczy0wsq1l1

相关推荐
江城开朗的豌豆几秒前
Vue路由守卫全攻略:给页面访问装上'安检门'
前端·javascript·vue.js
小磊哥er7 分钟前
【前端工程化】前端组件模版构建那些事
前端
前端 贾公子8 分钟前
monorepo + Turborepo --- 开发应用程序
java·前端·javascript
江城开朗的豌豆12 分钟前
Vue路由传参避坑指南:params和query的那些猫腻
前端·javascript·vue.js
十里青山21 分钟前
超好用的vue图片预览插件更新啦,hevue-img-preview 7.0.0版本正式发布,支持vue2/vue3/移动/pc,增加缩略图、下载、自定义样式等
前端·javascript·vue.js
lichenyang45330 分钟前
css模块化以及rem布局
前端·javascript·css
小熊哥^--^31 分钟前
条件渲染 v-show与v-if
前端
Chef_Chen36 分钟前
从0开始学习R语言--Day39--Spearman 秩相关
开发语言·学习·r语言
棉花糖超人38 分钟前
【从0-1的CSS】第3篇:盒子模型与弹性布局
前端·css·html
天水幼麟7 小时前
动手学深度学习-学习笔记(总)
笔记·深度学习·学习