详解 go 项目结构及包命名规则
本人从事 java 开发,近期转学 go,对 go 项目结构和包命名规范有以下疑问:
1. 包命名规则
在 java 中,包名通常遵循 com.公司.项目 的命名规范。而在 go 中,似乎包名都是一级的,如 package config。这样会不会容易出现重复?若与引入的第三方库重名,该怎么做?
2. 项目目录结构
一般情况下,go 开发中的项目目录结构是怎样的?能否提供示例?
解答
1. 包命名规则
在 go 中,包名的确是一级的。但为了避免重名,使用以下方案:
2. 项目目录结构
以下是一种常用的 go 项目目录结构示例:
my-project ├── .gitignore └── src ├── const // 常量 ├── richRS // 富媒体(字体、图片) ├── host // 网络 ├── main // 入口 │ └── main.go ├── tool // 工具 ├── login // 登录逻辑 │ └── register.go │ └── register_test.go └── go.mod
名相同处理
如果在项目中遇到重名,可以使用以下方法:
以上就是Go 项目结构及包命名规则:如何避免包名冲突?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号