我最近一直试图从架构的角度来理解 MVP 架构中交互器和用例之间的关系。我的疑问是关于部件之间的通信以及符合 MVP 标准的内容。
问题是我见过很多相互矛盾的流程图。其中一些似乎每个演示者都有一个交互者,另一些似乎每个演示者有多个交互者(每个交互者拥有多个相互关联的用例,例如所有与用户相关的案例),而其他似乎没有完全使用交互器,只与演示者直接交流用例。
我的主要(也是相当菜鸟)问题:从 MVP 的角度来看,让一个演示者与多个交互者进行通信是否可以,或者每个演示者应该只是一个交互者?在某些情况下,特定视图需要来自各种不同模型的数据,那么有人将如何处理这些数据?
为了问题的完整性,我附上了一个演示者持有两个交互者的流程图,并说明我的观点需要处理不同模型结构的演示者(一个用户属于一家公司,但假设我也需要显示只能通过 CompanyInteractor 获得的其他公司信息,并且在 UserInteractor 上复制没有任何意义)。如果“每个演示者一个交互者”是答案,那么每个演示者的单个交互者是否应该与演示者需要的所有不同的、不相关的用例进行通信?
谢谢
PS:对于流程图的混乱,使用draw.io *耸耸肩* 3分钟抱歉。