gfast 后端开发-项目结构

2022-04-02 12:00 更新
/
├── app   
│   ├── common
│   │    ├── adapter
│   │    ├── api
│   │    ├── dao
│   │    ├── service
│   │    ├── model
│   │    ├── ...
│   ├── system
│   │    ├── api
│   │    ├── dao
│   │    ├── service
│   │    ├── model
│   │    ├── router
│   │    ├── ...
│   └── other
├── boot
├── config
├── docker
├── document
├── i18n
├── library
├── packed
├── public
├── plugins
├── router
├── template
├── vendor
├── Dockerfile
├── go.mod
└── main.go
目录/文件名称 说明 描述
app 业务逻辑层 所有的业务逻辑存放目录
- api 业务接口 接收/解析用户输入参数的入口/接口层
- model 数据模型 数据管理层,仅用于操作管理数据,如数据库操作
- service 逻辑封装 业务逻辑封装层,实现特定的业务需求,可供不同的包调用
boot 初始化包 用于项目初始化参数设置,往往作为main.go中第一个被import的包
config 配置管理 所有的配置文件存放目录
docker 镜像文件 Docker镜像相关依赖文件,脚本文件等等
document 项目文档 Documentation项目文档,如:设计文档、帮助文档等等
i18n I18N国际化 I18N国际化配置文件目录
library 公共库包 公共的功能封装包,往往不包含业务需求实现
packed 打包目录 将资源文件打包的Go文件存放在这里,boot包初始化时会自动调用
public 静态目录 仅有该目录下的文件才能对外提供静态服务访问
plugins 扩展目录 提供一些扩展功能
router 路由注册 用于路由统一的注册管理
template 模板文件 MVC模板文件存放的目录
vendor 第三方包 第三方依赖包存放目录(可选,未来会被淘汰)
Dockerfile 镜像描述 云原生时代用于编译生成Docker镜像的描述文件
go.mod 依赖管理 使用Go Module包管理的依赖描述文件
main.go 入口文件 程序入口文件

在实践中,小伙伴们可以根据实际情况增删目录。

注意:如果需要提供静态服务,那么所有静态文件都需要存放到public目录下,仅有该目录下的静态文件才能被外部直接访问。不推荐将程序当前运行目录加入到静态服务中。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号