每个交付都重写一遍列表与表单,改一处字段要动多处代码
项目概览
项目背景
这是一组用 Go 写的平台类项目,共 2 个仓库。一个是元数据底座,提交 25 次,带 Docker 部署配置,仓库内有 12 篇文档;另一个是卡密生成与交付平台,最后提交在 2026 年 9 月,仓库内有 7 篇文档。两者都是 Go 技术栈,规模不大,但定位清楚——一个做底座,一个做具体交付。
客户当时的状态
重复开发是这类项目的核心痛点。每来一个交付,都要重新定义一遍业务对象、重写一遍列表和表单,改一处字段要动好几处代码。这种模式在交付量上来之后就走不通了。另一条线是卡密的生成、分发与核销:卡密一旦发出去,状态必须清楚,谁生成、发给了谁、有没有核销,出问题要能查。
我们的做法与取舍
第一个取舍是用元数据描述业务对象,把重复的增删改查收进底座。业务对象先用元数据定义出来,界面与接口由底座按定义生成,新增一个对象不再需要重写一遍代码。
第二个取舍是底座与交付物分离。底座只做平台能力,具体业务放在使用底座的交付项目里。这样底座升级不会绑死某一个交付,一个底座能支撑多个交付物。
第三个取舍是把卡密做成独立的交付产品,不和底座揉在一起。卡密链路有自己的生成、分发与核销状态,独立出来才好维护,也方便单独交付给需要的客户。
系统怎么承载这条链路
底座这一层负责元数据定义、页面与接口生成、以及权限等公共能力;交付层是具体业务,按底座的约定挂上去;卡密则是另一条独立链路,负责生成与核销。两层之间靠元数据定义衔接,而不是靠代码复制。底座与卡密端虽然都是 Go,但维护节奏可以分开,互不等对方发版。
交付状态与边界
代码处于维护状态,卡密端最近提交在 2026 年 9 月。边界说明:底座提供的是通用能力,具体业务能否落地取决于元数据定义得是否合适,定义不清仍会返工;卡密的安全强度取决于生成规则与保管方式,我们负责系统内的生成与核销,不承担贵方保管环节的责任;这套项目规模不大,公开口径不含任何量化收益,提交次数与文档篇数是仓库里可见的事实,仅此而已。
项目信息
某元数据平台项目
未披露
Go(元数据底座 ideabase,25 次提交,带 Docker)/ Go(卡密交付)
元数据底座与卡密交付平台
CHALLENGES
客户当时面对的现实
业务对象缺乏统一定义,界面与接口只能手工重复实现
卡密生成、分发与核销的状态必须清楚,出问题要能查到源头
底座与具体交付如果混在一起,底座升级就会牵动所有交付
CAPABILITIES
我们交付的能力
重复开发这件事,应该由底座解决而不是靠人多
元数据驱动
业务对象先用元数据定义出来,界面与接口由底座按定义生成,新增对象不必重写一遍代码。
底座与交付分离
底座只做平台能力,具体业务挂在底座之上,底座升级不绑死某一个交付物。
卡密链路
卡密生成、分发与核销是一条独立链路,谁生成、发给谁、有没有核销都有状态可查。
部署与文档
底座带 Docker 部署配置、仓库内 12 篇文档;卡密端另有 7 篇文档,部署与交接不靠口头。
SCOPE
交付范围
以下范围按本项目实际交付内容与边界整理,不属于这次范围的部分一并列出。
已交付
- 元数据底座(业务对象定义、页面与接口生成)
- 公共能力(权限等平台级能力)
- 卡密生成、分发与核销链路
- Docker 部署配置
- 底座 12 篇文档与卡密端 7 篇文档
不在本次范围
- 具体业务交付物:底座提供通用能力,具体业务按元数据定义挂载
- 卡密的安全保管环节:我们负责系统内的生成与核销,保管方式由贵方负责
- 对外量化收益:本批项目公开口径不包含任何收益类指标
ARCHITECTURE
分层技术架构
公开口径归纳为三层:底座层负责元数据定义与页面接口生成;交付层是挂在底座上的具体业务;卡密层是独立的生成与核销链路。两层之间靠元数据定义衔接。
元数据底座层
把重复的增删改查收进底座,减少重复开发
业务交付层
承载具体交付,不与底座捆绑
卡密链路层
独立维护卡密的全流程状态
DELIVERY
交付过程
分阶段推进,每个阶段都有可验收的产出,客户在早期就能看到实际效果。
业务对象与共性梳理
列出重复出现的业务对象与共性操作,确定元数据要覆盖的范围。
元数据底座
元数据定义、页面与接口生成能力落地,公共能力补齐。
卡密链路
卡密的生成、分发与核销状态流转实现。
部署与文档
Docker 部署配置落地,补齐底座与卡密端文档。
FACTS
可核验的交付事实
以下内容来自本项目实际交付物;未经验证的指标不予展示。
元数据底座 / 卡密交付平台
元数据底座 ideabase 的提交数
底座 12 篇 + 卡密端 7 篇
TRANSFER
这套做法适不适合你
案例的用处不是证明"我们做过",而是让你判断"在我们这种条件下能不能做成"。下面三句是我们对这一单的判断,写下来供你对照自己的情况。
适合什么情况
适合交付量大、业务对象重复度高、需要用一个底座支撑多个交付的场景。
什么情况下别照搬
若只有一两个交付,做底座属于过度设计,直接做业务更快;元数据定义不清时硬上底座,反而会增加返工。
如果要试,第一步做什么
先把重复出现的业务对象与共性操作列成一张表。
RELATED SERVICES
相关服务
从实际业务问题出发,查看对应服务的适用场景、交付物与不含项;具体范围仍需单独确认。
FAQ
常见问题
以下是同类项目沟通中出现频率最高的问题,答案就是我们实际的做法。
元数据底座到底解决什么问题?
底座和具体交付为什么不放一起?
卡密这条链路为什么要独立?
这套项目有量化收益吗?
做这类底座第一步做什么?
本页最后更新:2026年9月24日