Go 语言入门笔记(一):从零搭环境到跑通第一个程序
最近因为项目里开始用 Go 写一些高并发的服务再加上面试的时候发现不少岗位都要求“熟悉 Go 语言”索性就趁这个机会从头系统地学一遍。输出倒逼输入边学边记这系列笔记就当是我的公开学习日志了。第一篇就从最基础的环境搭建开始目标是跑通一行Hello, World。1. 装 Go省心的方法和踩过的坑1.1 官方下载推荐直接去 Go 官网的下载页面下载对应系统的安装包目前最新稳定版是 go1.22。Windows 下双击.msi一路下一步就行Mac 可以用.pkgLinux 下直接解压tar.gz放到/usr/local。我当时图省事在 Ubuntu 上直接apt install golang-go结果版本巨老连 modules 支持都不太完善后来又乖乖去官网下了二进制包。建议一定用官方渠道版本至少 go1.18 以上因为后面讲的泛型、工作区这些新特性老版本根本不支持。1.2 环境变量到底怎么设装完之后安装程序一般会自动把 Go 的 bin 目录加到PATH里没加的话可以手动加一下# 类 Unix 系统加到 ~/.bashrc 或 ~/.zshrc export PATH$PATH:/usr/local/go/bin然后聊几个容易迷糊的环境变量GOROOTGo 语言的安装路径。现在基本不用手动设了Go 自己知道。GOPATH老版本里必须设的工作目录现在有了 Go Modules 之后这个变量更多是用来存放go get下载的依赖和工具一般默认为~/go。验证一下安装成果go version go env GOROOT GOPATH GOPROXY输出版本号和路径就没问题了。2. 第一个程序Hello World 的正确打开方式2.1 新建项目目录习惯用 Modules所以不会像以前那样必须在$GOPATH/src下创建代码。随便找个地方新建个文件夹就行。mkdir hello-go cd hello-go2.2 初始化模块虽然不是必须的但我建议从一开始就用 module 管理哪怕只有一个文件。go mod init hello这会生成一个go.mod文件内容很简单module hello go 1.222.3 写代码新建main.gopackage main import fmt func main() { fmt.Println(Hello, 世界) }2.4 跑起来两种方式go run main.go编译并运行适合开发调试但会留下临时文件。go build生成可执行文件Linux 下是helloWin 下是hello.exe再运行。第一次跑看到控制台打出Hello, 世界的时候有种重新学编程的奇妙兴奋感。3. 这五行代码到底干了啥老鸟可以跳过新手朋友建议瞄一眼package main定义一个主包可执行程序必须叫main包。import fmt导入格式化 I/O 包用来打印东西。func main()程序的入口函数没有参数没有返回值必须是main包的main函数和 C 一样。fmt.Println打印一行自动加换行。大写字母开头的函数才能被外部使用也就是“导出”规则这个后面会反复提到。这里有个我当时犯的傻把文件名起成了main_test.go结果go run死活不认因为 Go 把_test.go结尾的文件当成测试文件了。4. 下一步学什么环境好了程序也跑通了。下一章准备梳理 Go 的变量声明那套“反直觉”的语法什么var、:、多变量赋值这些特别是和 C/Java 习惯打架的地方我会把踩坑过程记下来。如果这篇文章对你有帮助欢迎点赞收藏也欢迎在评论区纠正我理解不到位的地方一起扎实学下去。

相关新闻

云原生备份与恢复:容器与数据的备份策略

云原生备份与恢复:容器与数据的备份策略

云原生备份与恢复:容器与数据的备份策略📚 本章学习目标:深入理解容器与数据的备份策略的核心概念与实践方法,掌握关键技术要点,了解实际应用场景与最佳实践。本文属于《云原生、云边端一体化与算力基建:AI…

2026/10/3 4:01:27 阅读更多 →
CESU.ai vs SpeedCE:新兴工具站与地图派实测对比

CESU.ai vs SpeedCE:新兴工具站与地图派实测对比

CESU.ai vs SpeedCE:新兴工具站与地图派实测对比工具地址:https://www.speedce.com 社区论坛:https://bbs.speedce.com 联系:speedceadsgmail.com写在前面 本文围绕「CESU.ai vs SpeedCE」展开,提供可落地的技术方案&a…

2026/10/4 0:36:53 阅读更多 →
Claude星号怎么去除?AI 导出鸭一键净化,告别满屏标记符号

Claude星号怎么去除?AI 导出鸭一键净化,告别满屏标记符号

Claude星号怎么去除?AI 导出鸭一键净化,告别满屏标记符号 使用Claude生成内容时,满屏的星号(*)常常令人头疼。加粗用 **文本**、斜体用 *文本*、列表用 - 或 *、表格用 | 分隔符——这些Markdown语法在Claude对话中清晰…

2026/10/6 19:40:20 阅读更多 →

最新新闻

观察级ROV机械手臂选型与实操:自由度、驱动及维护排障

观察级ROV机械手臂选型与实操:自由度、驱动及维护排障

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 15:58:25 阅读更多 →
YOLOv5 6.0吸烟检测实战:从数据集配置到边缘部署全流程

YOLOv5 6.0吸烟检测实战:从数据集配置到边缘部署全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 15:58:25 阅读更多 →
ADE Explorer实战指南:从Spectre仿真配置到Monte Carlo与收敛排查

ADE Explorer实战指南:从Spectre仿真配置到Monte Carlo与收敛排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 15:58:25 阅读更多 →
控制即推理:从贝叶斯推断看强化学习中的最大熵与SAC

控制即推理:从贝叶斯推断看强化学习中的最大熵与SAC

经常有人问我,为什么近几年强化学习里到处都是 (\pi(a|s)\propto\exp(Q(s,a)/\alpha)) 这种写法,还有SAC里那个自动调节的温度系数到底从哪来的。追根溯源,答案基本都落在同一个理论框架上——Control as Inference,翻译过来就是“…

2026/10/7 15:58:25 阅读更多 →
ponytail skill 插件使用指南:从零搭建自动化工作流

ponytail skill 插件使用指南:从零搭建自动化工作流

1. 从“ponytail”这个词说起:它到底是什么第一次看到“ponytail”这个词,大多数人脑子里蹦出来的画面是扎在脑后的一束马尾辫。但在技术圈和工具链语境里,它早就不是发型的意思了。最近一段时间,ponytail skill、ponytail 插件、…

2026/10/7 15:58:25 阅读更多 →
ISO3082DWR芯片手册深度解读:从电气参数到PCB设计的工程实践指南

ISO3082DWR芯片手册深度解读:从电气参数到PCB设计的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 15:57:24 阅读更多 →

日新闻

ROS2机械臂仿真与运动控制:从URDF建模到Gazebo实战全解析

ROS2机械臂仿真与运动控制:从URDF建模到Gazebo实战全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:01:58 阅读更多 →
用浏览器直接改ESP32的WiFi密码:NVS键值配置工具设计与实现

用浏览器直接改ESP32的WiFi密码:NVS键值配置工具设计与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:02:00 阅读更多 →
芯片封装缺陷检测:扫描声学显微镜(SAT)原理与实操指南

芯片封装缺陷检测:扫描声学显微镜(SAT)原理与实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:02:00 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 14:34:12 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 14:34:13 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 9:29:10 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 14:34:12 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 11:43:46 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 13:34:55 阅读更多 →