适用于Android的MVP设计:如何采用我的应用程序?

时间:2016-12-16 01:31:54

标签: android mvp

我正在编写一个包含JSON文件的应用程序,该文件包含应该解析并保存到ItemModel POJO中的数据。

我们现在假设我有一个简单的Activity,它根本不显示任何内容 - 我希望我的应用程序在启动时解析JSON并创建模型对象(I& #39;想要在转向更大/更好的事物之前弄清楚这些部分的基本架构。我想在制作任何UI组件之前对此代码进行单元测试,以确保我的模型类正常工作。

因此,ItemModel显然是一个模型对象。

根据MVP,JSON解析在哪里?用于解析数据的库(GsonJackson或其他什么?)肯定需要Android Context来实现这一目标,因此我应该在{{1}中解析该信息}}?如果是,现在视图知道Activity类,这会打破MVP。

另外,如果我想让他们在数据库中保留Model / ItemModel数据,那么会在哪里完成?数据库在技术上应该在模型中 - 但同样需要JSON才能正常工作......

有什么想法?谢谢!

1 个答案:

答案 0 :(得分:0)

在Android

中实施MVP没有确切/正确的定义

这是关于MVP

的精彩文章

我会按照以下方式做MVP。

  1. 模型 - POJO,解析,存储(SQLlite)和检索数据(http)。显然我将POJO,解析和数据库逻辑划分为子文件夹 - 但这一切都属于我的模型。
  2. 查看 - ActivityFragmentAdapters - 活动&片段保持对Presenter的引用,该Presenter为它们提供要显示的数据。如何显示这些数据/消息,外观+感觉等在视图中处理。
  3. 演示者 - 中间人,为输入提供逻辑,即按钮点击,数据检索,输入验证和输入。然后将结果传递回视图(ActivityFragment
  4. 这是一个简化的diagram MVP

    enter image description here