Android MVP模式初体验

时间:2021-01-01 21:10:42

最近经常听到MVP模式的好,于是我去试着了解了下MVP并使用这种模式写了个demo。

MVP心得

MVP相比于MVC,多了好多类和接口,但逻辑看着很清晰。

V是Activity、Fragment这些View界面。使用接口实现的方式对V层的控制。(比如隐藏文本)

M层即Model,我的理解就是我们常见的Bean类。也是使用接口实现的方式来对M进行操作。(比如Bean类中的set、get方法)

(另外我还看到有的是Bean和M分开的,即先定义个bean对象,然后写一个M接口。在实现M接口的类中对Bean进行操作。)

P层是Persent,P是用来处理逻辑的。在P中我使用之前在M和V中写的接口来实现业务逻辑。

MVP实现步骤

明确需求、建立M接口、实现M接口、建立V接口便于P控制V、实现V接口、建立P控制器、在P中使用M和V提供的接口来实现逻辑。

使用接口的好处

让我们对方法一目了然,起到目录索引的功能。具体逻辑在实现接口的类中。

对MVP的疑惑

其实对于MVP还是有一定疑惑的,一些地方还是不太理解。

首先就是Adapter,adapter众所周知是一个用在不确定数量、相同界面的如ListView中的。我在日常工作中会在Adapter中做很多操作。如数据存储、网络请求、View的控制等等。那么这个adapter在MVP中处于何种地位?

其他的……暂时没有想到。

另外就是感觉MVP写起来麻烦点~慢慢体会MVP和MVC的不同之处。之后再补上一篇全面的理解。