越来越多人讨论mvp模式,mvp在android应用开发中获得更多的重视,这里说一下对MVP的简单了解。
什么是 MVP?
MVP模式使逻辑从视图层分开,目的是我们在屏幕上怎么表现,和界面如何工作的所有事情就完全分开了。
View显示数据,响应用户的行为,可以是Activity, fragment, View, dialog.
Model数据层
**Presenter**1从model层为view层提供数据。2处理后台任务。
为什么使用MVP
1.多数的android应用模式只是使用了View-Model架构。
2.程序员往往是在为解决view的复杂性在战斗而不是处理业务任务。
MVP使视图从数据源独立出来,使应用最少分为不同的三个层,我们可以单独的测试每个层次,使用MVP我们可以是大多数的逻辑处理从activity中剥离出来。
使用MVP视图层就会变的简单,请求回数据不再可以不需要回调方法,视图逻辑变的非常清晰。
当你写一个Activity,一个fragment 或者一个普通的view, 你可以将所有与后台任务有关的方法放到不同的外部或者静态方法中。这种方式使你的后台任务不再与一个activity关联,不再导致内存泄漏,不再依赖于activity的活动。这样的对象就是“Presenter”。
有很多不同的处理后台任务的处理方法,但没有一个能像MVP一样可靠。