当前位置:首页 » 安卓系统 » androidmvp缺点

androidmvp缺点

发布时间: 2022-04-26 14:01:58

⑴ Android MVP与MVC的区别和理解

MVP架构:
View不直接与Model交互,而是通过与Presenter交互来与Model间接交互。
Presenter与View的交互是通过接口来进行的。
通常View与Presenter是一对一的,但复杂的View可能绑定多个Presenter来处理逻辑。
MVC架构:
View可以与Model直接交互。
Controller是基于行为的,并且可以被多个View共享。
可以负责决定显示哪个View。

⑵ mvp android会导致内存泄漏吗

MVP模式是MVC模式在Android上的一种变体,要介绍MVP就得先介绍MVC。在MVC模式中,Activity应该是属于View这一层。而实质上,它既承担了View,同时也包含一些Controller的东西在里面。这对于开发与维护来说不太友好,耦合度大高了。把Activity的View和Controller抽离出来就变成了View和Presenter,这就是MVP模式。 在Android项目中,Activity和Fragment占据了大部分的开发工作。如果有一种设计模式(或者说代码结构)专门是为优化Activity和Fragment的代码而产生的,你说这种模式重要不?这就是MVP设计模式。 按照MVC的分层,Activity和Fragment(后面只说Activity)应该属于View层,用于展示UI界面,以及接收用户的输入,此外还要承担一些生命周期的工作。Activity是在Android开发中充当非常重要的角色,特别是TA的生命周期的功能,所以开发的时候我们经常把一些业务逻辑直接写在Activity里面,这非常直观方便,代价就是Activity会越来越臃肿,超过1000行代码是常有的事,

⑶ Android MVP解释!,

优点:view由Activity承担,Presenter做业务,结构清晰(模式么就是讲究一个套路,结构清晰后来者维护也是受益的)。之前开发都是全写一个类-Activity里面,业务复杂的情况下看着头疼。看一些公司招android还讲究mvc,™Activity到底算v还是c,还是两者都是?缺点:每个view有个presenter,类多了。不说presenter重用,实际工作中我是没法抽象使得presenter重用(技术渣)。有时候业务简单就直接一个Activity搞定了。

⑷ Android MVP模式中,一个Activity对应多个Presenter时该怎样抽象

MVP概念:MVP(Model-View-Presenter) 是总所周知MVC模式的一个演变,主要目的都是划分模块职责,降低模块耦合,易测试,提高代码复用。层级责任Model:负责数据的检索,持久化等操作。
View: 负责UI的绘制和用户的交互。
Presenter: 作为Model和View的中间协调部分,负责两者之间的业务逻辑处理。</ol>MVC模式的区别MVC模式允许View层和Model层直接通讯。
当某个View的功能很复杂的时候,View和Model的耦合度可能会很高。
MVP模式就没有这个问题,View会抽象出来一系列操作UI的接口。
Presenter拿到的都是其他两个层级的接口来做业务逻辑的处理,这样不仅可以使View和Model之间的耦合度降低,还可以更易得进行单元测试。</ol>MVP的优缺点优点:降低耦合,层级职责更明显,易于单元测试。
缺点:造成类数量爆炸,代码复杂度和学习成本高,在某些场景下presenter的复用会产生接口冗余。

⑸ 安卓mvc和mvp的区别

对于MVP(Model View Presenter),大多数人都能说出一二:“MVC的演化版本”,“让Model和View完全解耦”等等。本篇博文仅是为了做下记录,提出一些自己的看法,和帮助大家如何针对一个Activity页面去编写针对MVP风格的代码。

对于MVP,我的内心有一个问题:

为何这个模式出来后,就能被广大的Android的程序员接受呢?
问了些程序员,他们对于MVP的普遍的认识是:“代码很清晰,不过增加了很多类”。我在第一次看到MVP的时候,看了一个demo,看完以后觉得非常nice(但是回过头来,自己想个例子写,就头疼写不出来,当然这在后文会说)。nice的原因还是因为,这个模式的确让代码的清晰度有了很大的提升。

那么,提升一般都是对比出来的,回顾下,没有应用MVP的代码结构。很多人说明显是MVC么:

View:对应于布局文件
Model:业务逻辑和实体模型
Controllor:对应于Activity
看起来的确像那么回事,但是细细的想想这个View对应于布局文件,其实能做的事情特别少,实际上关于该布局文件中的数据绑定的操作,事件处理的代码都在Activity中,造成了Activity既像View又像Controller(当然了Data-Binder的出现,可能会让View更像View吧)。这可能也就是为何,在该文中有一句这样的话:

详细

⑹ 如何看待android mvp 设计模式的优缺点

MVP设计模式是为了方便ASP.

⑺ 我是觉得mvp不适合android,增加那么多接口,虽然能解耦,但实际情况是改动一点需求就要涉及好

我今天在研究MVVM你要不要一起啊。你说的是

复杂的业务同时会导致presenter层太大,代码臃肿的问题。

MVVM为MVP升级版哇,有空研究一下子。网页链接

⑻ mvp模式中将activity当成p有什么坏处

缺点:每个view有个presenter ,类多了。不说presenter重用,实际工作中我是没法抽象使得presenter重用(技术渣)。有时候业务简单就直接一个Activity搞定了。

⑼ android mvvm和mvp哪个好

没有那个好那个不好一说,大项目需要用到框架做以后的维护升级,小项目没必要去强套什么框架,反而会变得麻烦。

⑽ Android 目前是 mvc,mvp,mvvm 哪种模式比较好

mvc的界面和逻辑关联紧密,数据直接从数据库读取。mvvm的界面与viewmode是松耦合,界面数据从viewmodel中获取。如果你写代码的时候在界面的cs文件里有很多业务逻辑代码,那么你使用的就不是mvvm,而是mvc

热点内容
android添加sdk 发布:2025-05-15 08:59:20 浏览:5
oracle数据导入sql 发布:2025-05-15 08:55:00 浏览:49
最适合做的脚本 发布:2025-05-15 08:54:27 浏览:380
太原php培训班 发布:2025-05-15 08:41:38 浏览:937
豌豆服务器地址 发布:2025-05-15 08:34:56 浏览:712
linux下php编译安装 发布:2025-05-15 08:30:37 浏览:592
c语言八进制十六进制 发布:2025-05-15 08:22:17 浏览:282
华为安卓如何更新鸿蒙 发布:2025-05-15 08:18:52 浏览:373
工商密码器是什么 发布:2025-05-15 08:18:50 浏览:752
c语言自考 发布:2025-05-15 07:52:42 浏览:501