【发布时间】:2020-12-03 23:27:18
【问题描述】:
我需要在 iOS 应用程序中实现拉取刷新,我遇到了这个问题,我不知道如何使用 DDD 的最佳实践来解决问题。
表示层有一个刷新列表的事件,这需要更新结果丢弃缓存并从后端获取元素。
在域层中,我的用例与存储库通信,但是,由于缓存是一个实现细节,存储库接口没有公开“cleanCache”方法,因此没有从用例刷新缓存的干净方法. 这或多或少是我拥有的文件结构
域
- GetAllTodosUseCase
- TodosRepository(接口)
基础设施
- InMemoryTodosRepository(缓存)
- RemoteTodosRepository (api)
- InMemoryWithRemoteTodosRepository(组合缓存和 api)
应用
- 工厂
演示文稿
- UI(与交互界面对话)
【问题讨论】:
标签: domain-driven-design pull-to-refresh clean-architecture cache-invalidation