架构组成单元
- Model:业务模型
- ModelRepository:业务模型的持久化
- ModelService:模块提供的业务服务
- UseCase:由ModelService和Repository组合形成的用户需要的功能
- UI:界面
新老架构示意图
新架构的优点
- 层次结构更加清晰
- 各个层次之间间通过接口实现解偶,可以更加方便针对不同层代码进行单元测试(实现依赖导致原则)
- 模块职责更加明确,可读性更强,方便维护,和单元测试
- 扩展新功能时,只需要新增,删除UseCase文件即可。而原来老架构中的Service需要修改文件内部代码,违反了开放封闭原则