用途:在分层架构、Clean Architecture 或 DDD 项目中,帮助决定仓储接口与实现应放在哪一层,核心目标是防止领域模型向外依赖数据访问。
主要规则:聚合代码不得依赖仓储;应用/用例层依赖仓储接口并编排加载与保存;领域层仅在项目约定把仓储视为领域契约时才可定义仓储抽象,但聚合仍不得调用;基础设施/接口适配器用数据库、API 或文件实现仓储。
工作流:先找出仓储接口、实现及所有调用点;把调用从领域对象移入用例或由用例调用的领域服务;保持持久化映射位于聚合之外;使包放置与项目架构风格一致。
详细参考:对于非平凡的实现、评审或重构工作,在给出最终建议前阅读 references/details.md,其中包含详细规则、示例、坏味道与迁移说明。
输出:返回放置映射、违规项、修正后的依赖关系与文件移动建议。
限制:资料未提供具体安装命令、平台支持、收费方式或效果数据。