关于MVP的小考虑以及MVVM

2024-05-16 14:32
文章标签 mvp mvvm 考虑

本文主要是介绍关于MVP的小考虑以及MVVM,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于MVP



个人做法,把原来Activity层的数据请求放到Presenter类,然后在Presenter请求结果中调用View层的操作,Presenter作用是请求数据和调用View
    包含:基础的BasePresenter接口和BaseView接口,Model的bean类,对应页面的Activity类,对应页面的Presenter类



hongyang大神的:

http://blog.csdn.net/lmj623565791/article/details/46596109

Model层:

bean类

请求接口类
请求实现类
View层:
View的接口类
View的实现类
Presenter层:
拿到View和Model层对象
调用请求实现类的方法请求数据
调用View实现类的方法操作UI

这样的presenter层才是起到了桥梁的作用



别人分析的官方的demo:

http://blog.csdn.net/ljd2038/article/details/51477475


基础BaseView,BasePresenter
还有一个契约接口,这个接口内部包含了View和Presenter的接口

Model层:
请求接口类
请求实现类
Presenter层:
实现了契约接口中的Presenter接口,实现了请求接口的callBack
总之也是一个中间的桥梁的作用
View层:
实现了契约接口中的View接口


说实话,目的是为了简化代码,提高可读性,便于维护。但是感觉越来越麻烦:

比如我只有简单的一个页面,如果按照这个模式写就要写一堆接口和实现。

感觉自己还是适合用简单的方法。(菜鸟没办法...)



关于MVVM:

参看了http://blog.csdn.net/u012702547/article/details/52077515


感觉很吊的样子,数据和布局在一个xml中声明,然后再Activity中使用BindingUtils处理。

但是不是很喜欢这种方式,所以先不学习了




这篇关于关于MVP的小考虑以及MVVM的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/995170

相关文章

Android从零开始搭建MVVM架构(5)—— LifeCycle详解

1.Lifecycle简介 为什么要使用lifecycle? activity 和fragment 是有声明周期的,有时候,我们的很多操作需要写在声明周期的方法中,比如,下载,文件操作等,这样很多情况下回导致,我们在activity中的声明周期方法中写越来越多的代码,activity或者fragment 越来越臃肿,代码维护越来越困难。 使用lifecycle就可以很好的解决这类问题。 lifec

Android从零开始搭建MVVM架构(4)——LiveData

LiveData 介绍 Livedata 是 Google 推荐的 Android 架构组件之一,是一个存放可被观察的数据持有类,有生命周期感知功能,解决了android开发者需要去手动处理生命周期的痛点。 比如当我们使用 Retrofit+Rxjava处理接口回调数据时,需要考虑activity 或 fragment 生命周期,以解决 onStop 或 onDestory之后回调数据的问题。现

Android从零开始搭建MVVM架构(3)——ViewModel

ViewModel类是被设计用来以可感知生命周期的方式存储和管理 UI 相关数据,ViewModel中数据会一直存活即使 activity configuration发生变化。 ViewModel有什么优势? 1.数据持久化 activity 在销毁重建时,之前我们可以用 activity 的onSaveInstanceState()机制保存和恢复数据,但缺点很明显,onSaveInstan

双叒叕-一个-Android-MVVM-组件化架构框架?

LifecycleViewModelLiveDataViewBindingAndroid KTXOkHttp:网络请求Retrofit:网络请求MMKV:腾讯基于 mmap 内存映射的 key-value 本地存储组件Glide:快速高效的Android图片加载库ARoute:阿里用于帮助 Android App 进行组件化改造的框架 —— 支持模块间的路由、通信、解耦BaseRecyclerVi

Android MVVM框架搭建(七)Permission、AlertDialog、拍照和相册选取

} return dialog; } public AlertDialog show() { final AlertDialog dialog = create(); dialog.show(); return dialog; } } } ④ 样式 在设置弹窗的样式和弹窗出现的方式,在themes.xml下新增如下代码: 这里还用到动画样式文件,在res文件夹下新建一个ani

Dragger2与MVP与Retrofit实战

1:MVP模块 1.1:MVP与MVC区别,有何应用场景1.2如何写mvp2:dragger2框架 2.1:为什么要用dragger2?2.2:深入解析dragger2?2.3:dragger2的使用3:retrofit的使用 MVP模块 MVP与MVC区别,有何应用场景       在我们传统的mvc开发中经常会遇到M(javabean),V(layout,activity),C(acti

WPF在MVVM模式下 ViewModel通讯

一、遇到问题       一般情况下我们可能会遇到当一个界面上的数据显示发生变化,可能通知其他界面,让其他界面上的数据或显示也发生变化。通常包括以下几种情况:  1.主界面通知子界面  2.子界面通知主界面  3.子界面通知子界面 二、实现方案      1.方案1       很容易想到的方案是:在一个ViewModel(vm1)中定义一个事件,然后另一个ViewModel(v

2024 年值得考虑的 5 款 PDF 转换器

您可以使用名为PDF 转换器(可移植文档格式)的软件应用程序将数据从一种格式转换为另一种格式,具体来说就是转换为 PDF 格式或从 PDF 格式转换为 PDF 格式。由于无论使用什么程序或平台查看,PDF 格式的格式和布局都保持不变,因此它是一种流行的文档分发文件格式。 提供多种 PDF 转换器,包括: PDF 转换为其他格式:您可以使用此类转换器将 PDF 文件转换为其他格式,如 Micro

电磁阀厂家:电磁阀结构设计需要考虑哪些方面?

随着科技的不断发展,电磁阀产品的应用范围愈发广泛。但在选购产品时,要注意产品的结构以及设计,以确保产品满足应用场景的各项要求。那么,电磁阀结构设计需要考虑哪些方面?接下来就让专业的电磁阀厂家来为大家简单介绍一下: 据悉,电磁阀的结构主要包括电磁铁、阀体、阀芯、弹簧、密封件等部分。在进行产品设计时,需要考虑以下这几个方面: 1、阀体材质选择。阀体是电磁阀的主要承载部分,其材质需要具

当遇到多个构造器参数时可考虑用构建器

在介绍构建器之前先来看看Java创建对象并初始化参数的两种方式: 已Person类为例。 class Person{// 以下必要参数public int weight;public int height;public String sex;public int age;// 以下是可选参数public String location;public String wife;pu