Golang编码习惯-项目代码目录结构和脚本文件、目录命名规则
纯属个人习惯总结
脚本文件、目录命名规则
全小写,并用(下划线)_分开
muti_function_token.go
项目代码目录结构
/cmd
开发cli程序目录,存放command命令
/cmd/root.go
/cmd/version.go
/api
常用来存放RESTful接口文件
扫描二维码关注公众号,回复:
12919306 查看本文章
![](/qrcode.jpg)
/api/swagger.json
/api/swagger.yml
/api/api.go
/configs *
配置相关,这个目录下存放初始化配置脚本,配置文件,(如果有)配置映射脚本。
/configs/webapi.yml
/configs/sync.yml
/configs/configs.go --> 初始化
/configs/webapi.go
/tools *
常用的工具和脚本,可以引用 /internal
或者 /pkg
里面的库。
/pkg
可以被其他的项目引用的代码模块。
/pkg/redis
/pkg/mongodb
/internal
应用程序的封装的代码,某个应用私有的代码放到 /internal/myapp/
目录下,多个应用通用的公共的代码,放到 /internal/common
之类的目录。
/internal/auth
/test
其他测试目录,功能测试,性能测试等
/examples
应用程序或者公共库使用的一些例子
/thirdparty
其他第三方库文件
/docs
项目说明文档,.md目录
/docs/webapi/build.md
/docs/sync/build.md
/web
web相关的静态文件
/assets
markdown依赖的静态文件
其他的按功能模块分目录,比如 account模块
那么,数据模型,业务逻辑的脚本都放在account目录下
/account/account.go --> 数据模型在该目录
/account/process.go --> 逻辑处理