首页 > 编程知识 正文

android开发框架mvp,Android 框架

时间:2023-05-06 09:06:13 阅读:149699 作者:4873

1 .前言

近年来,安卓体系结构的模型有很多。 众所周知的有MVC、MVP和MVVM。 目前,安卓市场使用最多的应该是MVP架构。 MVVM与DataBing配合使用看起来很方便,但一般公司很少使用。 其实,模式就像我们的个人习惯,思考码怎么放比较方便,慢慢形成了标准化的模式,好的码模式往后放,更容易和团队分工合作。 但是,说实话,刚接触到这些模式的时候,感觉代码的类变多了,但是逻辑上确实很简洁。 我们建议您不要为体系结构构建体系结构,而是切实寻求现实。

2.MVP与MVC的比较

当然,每种模型结构都有其优缺点。 这里借用弘扬大神的两句话

View :与布局文件对应的模型:业务逻辑和实体模型controllor:Activity对应的看起来确实是这样,但是如果仔细考虑该View与布局文件对应的情况,就会发现实际上实际上,关于该布局文件内的数据绑定的操作,事件处理的代码全部在Activity中,引起了Activity两者

MVP的出现是,view层无法直接与模型层进行交互。 Presenter作为中间的桥梁,连接view和模型,完全断开view和模型的连接,避免Activity代码变大。

3 .请求服务器登录的示例

我读过很多前辈的文章,在说明mvc模式时,基本上是以登录为例,但几乎都是用本地数据进行模拟的,所以我想很多人都会有同样的疑问。 网络请求部分的代码到底交给谁,Model? 还是Presenter? 是的。 定义用户登录时,View层的界面(或activity (或fragment,统称为activity ) )相对于View层的状态有何变化。

首先,用户点击登录获取用户输入的用户名和密码,在登录过程中,服务器返回信息,调用toast,关闭dialog,需要定义view层的这五个状态接口

模型层需要用户登录的方式、用户名和密码(map )以及回调界面。

这个例子使用了自己封装的Volley框架。 封装如下所示。 (

activity要求登录时,直接在Presenter上操作,所以我们Presenter实现方法有login方法,直接调用view层的接口和模型的接口来实现。

在view层,即对应的activity中,继承view层的接口,在Presenter中操作其中的方法即可。

这样,实现了确定用户注册的网络请求后,view中的代码就变得简洁了,代码也就更容易维护了。

微信公众号:

如果有不足的地方,请多多关照。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。