MVP交互者和用例关系

时间:2017-09-26 02:05:40

标签: android architecture mvp android-mvp

我最近一直试图从架构的角度理解交互者与MVP架构中的用例之间的关系。我的疑问是关于部件之间的通信以及符合MVP标准的内容。

问题是我看到了很多相互矛盾的流程图。其中一些似乎每个演示者都有一个交互器,其他人似乎每个演示者有多个交互器(每个交互器持有多个彼此相关的用例,例如所有与用户相关的案例),而其他人似乎没有完全使用交互者,只需将用例与演示者直接沟通。

我的主要问题(以及很棒的问题):从MVP的角度来看,是否可以让演示者与多个交互者进行通信,或者每个演示者应该只有一个交互者?有这样的场景特定视图需要来自不同模型的数据,那么有人会如何处理这些数据呢?

为了问题的完整性,我附上了一个持有两个交互者的演示者的流程图,并使我的观点清楚地表明需要处理不同模型结构的演示者(用户属于公司,但让我们说我还需要显示其他公司信息,这些信息只能通过CompanyInteractor获取,并且在UserInteractor上复制没有任何意义。 如果“每个演示者有一个交互者”是答案,那么每个演示者的单个交互者是否应该与演示者需要的所有不同的,不相关的用例进行通信?

由于

enter image description here

PS:很抱歉流程图混乱,使用draw.io *耸肩* 3分钟。

1 个答案:

答案 0 :(得分:0)

只要只有一个视图,您就可以根据需要使用尽可能多的交互器。没有限制,但为了避免锅炉板编码通常一个交互器就足够了。

在您的方案中,您可以使用Base Presenter来传递或接收相应班级的请求。

MVP规则:

  

将演示文稿(查看)图层与逻辑分开。