Go标准项目模板核心是结合Go Modules与合理目录结构,手动或轻量工具初始化:go mod init声明模块,创建cmd/internal/pkg/api/configs等目录,确保可维护性与清晰分层。
用 Go 初始化标准项目模板,核心是结合 Go Modules 和合理的目录约定,手动搭建或借助轻量工具快速生成结构清晰、可维护的包骨架。不需要复杂框架,Go 官方生态推崇简洁和显式设计。
在项目根目录执行:
go.mod,声明模块路径(建议用真实域名或 GitHub 路径)cmd/(主程序入口)、internal/(私有业务逻辑)、pkg/(可复用的公共包)、api/(接口定义)、configs/(配置文件)等mkdir -p cmd/myapp internal/handler internal/service pkg/utils
在 cmd/myapp/main.go 中写最小可运行入口:
"example.com/myapp/internal/handler"),调用初始化逻辑internal/handler 下放一个 handler.go,导出简单函数如 StartServer()
pkg/utils 放 logger.go 或 errors.go,体现分层意图若需频繁新建项目,可用 Bash/Python 脚本或轻量工具辅助:
init.sh:自动 go mod init + mkdir + touch 关键文件 + 写入基础代码片段boilr template use go-standard 快速填充运行 go list ./... 查看所有包是否被识别;用 go build ./cmd/myapp 确保能编译;检查 go mod tidy 是否干净无冗余依赖。
不复杂但容易忽略——结构服务于协作与演进,不是越深越好,而是让新人一眼看懂“从哪启动、配置在哪、核心逻辑藏在哪”。