当前位置: 首页 > backend >正文

【Golang入门】第一章:环境搭建与Hello World

1. 本文目标

  • 完成Go语言开发环境搭建(Windows/MacOS/Linux)
  • 理解GOROOT与GOPATH的区别
  • 掌握Go Module模块化开发
  • 编写并运行第一个Go程序

2. Go语言安装

2.1 下载安装包

访问Go官网下载页选择对应操作系统的安装包:

2.2 各系统安装步骤

Windows系统
  1. 双击下载的.msi安装包
  2. 默认安装路径为C:\Go\(建议保持默认)
  3. 安装程序会自动添加C:\Go\bin到系统PATH环境变量

验证安装:
打开CMD执行命令:

go version
# 成功输出示例:go version go1.21.0 windows/amd64
MacOS系统
  1. 下载.pkg安装包
  2. 双击安装,默认路径为/usr/local/go/
  3. 配置环境变量(使用Homebrew推荐):
# 通过Homebrew安装(推荐)
brew install go
Linux系统
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install golang-go# CentOS
sudo yum install golang# 手动安装(最新版本)
wget https://go.dev/dl/go1.21.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin

3. 环境变量核心概念

3.1 GOROOT

Go语言的安装目录,存放编译器、标准库等核心文件

  • Windows默认:C:\Go\
  • Unix系统默认:/usr/local/go

3.2 GOPATH

传统的工作区目录(Go Module启用后重要性降低),包含三个子目录:

  • src: 存放项目源代码
  • pkg: 编译生成的库文件
  • bin: 生成的可执行文件

3.3 现代开发模式:Go Module

从Go 1.11版本开始引入的依赖管理机制,彻底解决了GOPATH的路径限制问题。

启用方法:

go env -w GO111MODULE=on

4. 创建第一个Go项目

4.1 初始化模块

新建项目目录并执行:

mkdir my-first-go-project
cd my-first-go-project
go mod init github.com/yourname/hello-world

成功生成go.mod文件:

module github.com/yourname/hello-worldgo 1.21

4.2 编写Hello World

创建main.go文件:

package main  // 每个Go文件必须声明所属包import "fmt"  // 导入标准库格式化包// main函数是程序入口
func main() {// 打印带换行的消息fmt.Println("Hello, CSDN!")fmt.Printf("当前Go版本: %s\n", goVersion())
}// 多返回值函数示例
func goVersion() string {return runtime.Version()
}

4.3 运行程序

go run main.go
# 输出:
# Hello, CSDN!
# 当前Go版本: go1.21.0

5. 项目结构规范

推荐的标准项目布局:

my-project/
├── go.mod       # 模块定义文件
├── go.sum       # 依赖校验文件
├── main.go      # 主入口文件
└── internal/    # 内部私有代码└── utils/└── helper.go

6. 常见问题排查

Q1: 执行go命令提示"command not found"

  • 检查环境变量PATH是否包含$GOROOT/bin
  • 重新打开终端使配置生效

Q2: Go Module代理设置

# 设置国内镜像加速
go env -w GOPROXY=https://goproxy.cn,direct

Q3: 跨平台编译

# 编译Linux可执行文件
GOOS=linux GOARCH=amd64 go build -o hello-linux

7. 总结

通过本文您已经完成:

  • ✅ 全平台Go开发环境搭建
  • ✅ 理解核心环境变量作用
  • ✅ 创建基于Go Module的现代项目
  • ✅ 编写并运行首个Go程序

接下来我们将学习:《Golang变量与常量:从iota到作用域掌控》


代码资源
地址:https://download.csdn.net/download/gou12341234/90924326


下节预告:第二章《变量、常量与作用域》将深入讲解Go的变量声明方式、常量的iota黑魔法以及作用域陷阱!

http://www.xdnf.cn/news/9455.html

相关文章:

  • 一站式掌握视频编辑器开发:OpenCV + Qt + FFmpeg 实战课程全览
  • 大模型应用开发之微调与对齐
  • Vision Pro发布!开发者如何快速上手空间UI设计?
  • 【iOS】源码阅读(五)——类类的结构分析
  • 第十章 管理Linux的联网
  • rsync使用守护进程启动服务
  • ffmpeg命令(二):分解与复用命令
  • 政策支持下的PLM国产化浪潮:国产PLM的最新应用、前沿技术、反超路径
  • JVM与JMM深度解析:从Java 8到Java 21的演进
  • 基于AI的智能农业病虫害识别系统实战指南
  • 电脑更新升级,数据怎么办
  • 初识Linux指令(笔记)
  • CAD提示软件缺失怎样解决
  • Linux常见基本指令
  • Linux系统下使用update-alternatives进行行Java多版管理和切换
  • AJAX配置问题与解决方案指南
  • 24 数组基础与应用详解:定义(静态/VLA)、初始化、访问(有效/越界/内存调试)、遍历、大小端字节序
  • LockSupport与Condition解析
  • 操作系统精髓与设计原理(只讲大概的,例子讲的少,详细请看书)
  • 高效获取唯品会商品数据:API 接口开发与实时采集方案实现
  • QT布局综述
  • Flutter 实现6个验收码输入框
  • python多进程
  • 应用签名分发平台开发源码时数据储存是如何实现
  • vue3自定义指令来实现 v-focus 功能
  • LittleFS 小型文件系统(一)
  • HOW - 从0到1搭建自己的博客站点(三)
  • KV Cache:大模型推理加速的核心机制
  • shell脚本中的常用命令
  • AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月27日第90弹