[GoLang避坑实战-17] 从零撸一个计算器:基础知识的大合练
大家好,我是极客老墨。 学了这么多语法,是时候写个完整项目了。光看代码片段,很难理解 Go 项目是怎么组织的。这篇我们从零开始,写一个命令行工具,看看真实项目的结构和开发流程。 项目目标 我们要做一个简单的命令行计算器,支持基本的数学运算。 功能需求 支持加减乘除运算 命令行参数输入 彩色输出结果 错误处理 技术要点 Go Modules 依赖管理 标准项目结构 包的导入和使用 第三方库集成 交叉编译 初始化项目 第一步是创建项目目录并初始化模块。 创建项目 1cd go-tutorial-code 2# 创建项目目录 3mkdir 15-project-example 4cd 15-project-example 5 6# 初始化 Go Module 7go mod init github.com/hankmor/calc 这里老墨为了教程的需要,把代码放到了 go-tutorial-code, 并且模块名称没有与文件夹名称一致。 生成的 go.mod: 1module github.com/hankmor/calc 2 3go 1.24 要点: 模块名通常是代码仓库地址 go.mod 是项目的起点 初始化后就可以开始写代码了 项目结构 Go 项目有约定俗成的目录结构。 标准布局 15-project-example/ ├── go.mod # 模块定义 ├── go.sum # 依赖校验 ├── cmd/ # 命令行工具目录 │ └── calc/ │ └── main.go ├── pkg/ # 可导出的库代码 │ └── calculator/ │ ├── calculator.go │ └── calculator_test.go ├── internal/ # 私有代码(不可被外部导入) │ └── utils/ │ └── helper.go ├── README.md # 项目说明 └── Makefile # 构建脚本(可选) 目录说明: ...