我不能100%确定Presenter与模型在MVP模式中的作用。根据我的理解,Presenter包含对模型和视图的引用,观察它们,并将模型中的更改传递给视图,反之亦然。
但Presenter的“全部”是什么?例如,用户输入的验证代码应该在Presenter中吗?
然后是对话问题。它们应该有自己的Presenter还是应该使用其底层窗口的Presenter?
答案 0 :(得分:3)
正确,演示者持有对视图和模型的引用,并负责创建它们并在它们之间进行调解(其范围取决于所使用的特定模式)
演示者包含UI业务逻辑,例如单击保存按钮
MVP三元组中的模型职责就是保存此视图的信息。它可能是一个专门用于此目的的类或来自您的域模型的类。
验证取决于您的具体情况。在一个简单的应用程序中,演示者可能是正确的位置,但这可能导致代码重复。域模型是更中心的位置,但可能意味着更多的管道使它与您的演示者/视图对话。
希望有所帮助