HelloAdmin
文章目录
【注意】最后更新于 November 14, 2023,文中内容可能已过时,请谨慎使用。
thumbnail image prompt:background: A butterfly is on a flower in the warm sunlight ,frontend text: “HelloAdmin”
项目介绍
HelloAdmin 是一个基于 Gin + Ant Design Vue UI 的前后端分离管理系统,前端使用 Ant Design Vue UI,后端使用 Gin 框架。
受 go-clean-template 项目启发,如何组织Go项目,以防止项目演化成难以维护的代码,使用 Go 社区库,组织了该项目,借助 AI Coding,重新组织了项目工程结构可用于新项目组的 Go 脚手架工具。
工程架构
该项目使用四层架构,常规无论是 PHP 框架还是 Java,基本 MVC 三层思想已经深入我们的心中,但是 Go 项目如果像 PHP、Java 项目一样组织代码,开发过程中将是很痛苦的一件事,目录中跳来跳去,这让我觉得很麻烦。
于是在借鉴 go-clean-template 项目思想,我做了以下两个方向的主要改造:
- 按业务划分代码块,直白说就是,同一个业务的代码在一个目录下,以员工和部门为例,工程目录如下:
|
|
各个业务模块的代码,归在各自的工程目录,这样做的唯一好处就是很好维护,那个业务模块出了问题,可以快速定位。
- 在 MVC 三层思想之上,增加 Service 层,每层业务对外以接口方式暴漏,符号 > 和 < 通过接口显示层边界的交集 如图所示
|
|
- repository (repo) 保持着与数据库(database)最纯粹的 CURD
更多,见源码地址:https://github.com/heliosker/helloadmin
文章作者 BING
上次更新 2023-11-14