模型视图演示者 - 被动视图 - 谁加载模型?

时间:2012-11-12 22:35:25

标签: view model loading mvp presenter

我很好奇使用MVP模式来提高可测试性。我有MVC的经验,但MVP似乎有所不同。

我有一个应用程序在“项目”文件上运行,该文件实际上是一个包含多个文件和文件夹的压缩存档。这个项目应该是我的模型。

我将把加载模型的代码放在哪里?我也在考虑另一个抽象层:某种BackEndConnection。它将能够读取项目文件。它可以是FileBackEndConnection或FTPConnection等等(这应该是可能的)。

这属于演示者吗?

View ---- Presenter ---- Project (Model)
              |
              |
       BackEndConnection

启动将是这样的:

Presenter presenter = new Presenter(BackEndConnection e);

将触发演示者调用

Project project = backEndConnection.getProject();

,它将能够初始化模型。

this.model=project;

然后

View v = new View(presenter);

不知怎的,这听起来不对。我更喜欢模型中的BackEndConnection:

Project --- BackEndconnection

在这种情况下,Presenter将使用BackEnd简化模型,模型可以实现业务。

当然这意味着模型必须提供model.persist()和model.loadFrom(BackEndConnection)等等。它是否正确?关于处理MVP的模型加载,我找不到太多的资源。

0 个答案:

没有答案