6. 开发与架构
开发与架构
本章面向维护后端、管理端或私有扩展的开发者。当前服务端要求 Go 1.26,管理端是 admin-webui Git 子模块,使用 Node.js 22 与仓库声明的 pnpm 10.10.0。
阅读顺序
版本基线
| 组件 | 当前基线 |
|---|---|
| Go | 1.26 |
| go-web | 1.8.4 |
| Gin | 1.12.0(由 HTTP 抽象层承载) |
| GORM | 1.31.1 |
| Goose | 3.27.1 |
| Node.js | 推荐 22 |
| pnpm | 10.10.0 |
| Vue / UI | Vue 3、Ant Design Vue、Vben Admin 5 |
开发边界
- 不直接修改已经发布的迁移;结构变化新增三个数据库方言的迁移。
- Controller 使用
RouterContextInterface,不要把*gin.Context泄露到业务层。 - Service 承担业务规则,DAO 承担数据库访问,Controller 只处理输入、权限和响应。
- 所有工作区业务查询都要带
workspace_id,不能只依赖前端筛选。 - 不在日志、测试数据、截图或提交中放入真实密码、Token、App Secret、个人信息。
- 二次开发和分发必须遵守仓库
LICENSE,它不是标准开源许可证。