前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Golang环境初始化

Golang环境初始化

原创
作者头像
Yuou
发布2022-12-13 17:44:31
4010
发布2022-12-13 17:44:31
举报

## 环境初始化

```shell

.

├── Readme.md

├── config // 配置文件

├── controller // CLD:服务入口,负责处理路由、参数校验、请求转发

├── service // CLD:逻辑(服务)层,负责业务逻辑处理

├── dao // CLD:负责数据与存储相关功能(mysql、redis、ES等)

│ ├── mysql

│ └── redis

├── model // 模型

├── logging // 日志处理

├── main.go // 项目启动入口

├── middleware // 中间件

├── pkg // 公共服务

├── router // 路由

```

- 推荐访问链接地址: https://golang.google.cn/dl/

> Go的版本更新迭代较快,建议下载最新版本,体验新特性。

通过`go version`查看当前安装的版本

```powershell

PS C:\Users\Administrator.DESKTOP-36OCN81\Desktop\Go> go version

go version go1.19.1 windows/amd64

```

### GOROOT和GOPATH

`GOROOT`和`GOPATH`都是环境变量,`GOROOT`使我们Go开发包的路径,从1.8版本开始,Go的开发包在完成安装后会给`GOPATH`社会一个默认目录,所以一般不需要我们自己设置,使用默认的即可!

### GOPROXY

1.14版本之后,都推荐使用`go mod `的模式管理依赖,也不需要强制我们把代码写在`GOPATH`下面的`src`目录下,你可以在电脑的任意位置编写go代码。

默认的`GOPROXY`地址是国外的,国内访问不到,建议更换!

```powershell

go env -w GOPROXY=https://goproxy.cn,direct

```

## 插件的选择

- Go for VS Code v0.35.2

## 一个简单的Hello world

- 新建一个`code/Day1/`的目录

新建一个`code/Day1/main.go`的文件

```go

package main // 声明 main 包,表明当前是一个可执行程序

import "fmt" // 导入内置 fmt 包

func main() { // main 函数,是程序的执行入口

fmt.Printf("Hello world!") // 打印Hello world

}

```

## 创建第一个Go程序

- 记录当前的依赖、版本信息、第三方库信息,类似于Python的`requirements.txt`

```cmd

go mod init hello // hello 是你的项目名

go run main.go // 临时目录编译执行

go build // 直接编译成二进制文件

```

### 跨平台编译

如果你是`Windows`并且使用的是`cmd`

```cmd

SET CGO_ENABLED=0 // 禁用CGO

SET GOOS=linux // 目标平台是Linux

SET GOARCH=amd64 // 目标处理器架构是amd64

go build

```

如果你是`Windows`并且使用的是`PowerShell`

```PowerShell

$ENV:CGO_ENABLED=0

$ENV:GOOS=linux

$ENV:GOARCH=amd64

```

如果你是`Linux`平台

```shell

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build

```

如果你是`Mac`平台

- GOOS=Linux/darwin: Linux平台/Mac平台

```shell

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go

```

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档