关键词不能为空

当前您在: 主页 > 英语 >

Android开发中的MVP架构

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-27 18:50
tags:

-

2021年2月27日发(作者:topeka)


Android


开发中的


MVP


架构



最近越来越多的人开始谈论架构。我周围的同事 和工程师也是如此。尽管我还不是特别深入理解


MVP



DDD


,但是我们的新


项目还是决定通过


MVP


来构建。这篇文章是我通过研究和学习各种文章以及专题讨论 所总结出来的。



作者:佚名来源:


安 卓开发精选


|2016-12-08 10:03



收藏





分享




推广



|


令 人窒息的奖品等你



2016


最权威的 全球开发者调研



最近越来越多的人开始谈论架构。我周围的同 事和工程师也是如此。尽管我还不是特别深入理解


MVP



DDD



但是我们的新项目还是决定通过< /p>


MVP


来构建。



这篇文章是我通过研究和学习各种文章以及专题讨论所总结出来的,它包括以下几点:



?



?



?



?



?



为什么越来越多的人开始关注架构


?


首先,


MVP


是什么


?


哪种架构才是最好的,


MVC


MVVM


还是


MVP?


MVP


的利与弊



Show me the code!!!


代码展示



不幸的,这篇文章将不包括:



?



?



详细生动的代码示例



如何编写测试代码



最后,我将告诉你如何更进一步学习这些专题。



顺便提一下,我于上周在当地的一个研讨会上对


MVP


架构进行了相关演讲。这篇文章与当时的演讲内容相差无


几。



介绍


~Activity


是上帝类


~



首先,让我们思考一下为什么在


Android


开发中如此迫切地需要一个清晰的软件架构。



该段摘自



代码大全 第二版





避免创建神类。避免创建无所不知,无所不能的上帝类。如果一个类需要花费时间从其他类中通过


Get()



Set()


检索 数据


(


也就是说,需要深入业务并且告诉它们如何去做


)


,所以是否应该把这些功能函数更好的组织到其它类

< br>而不是上帝类中。


(Riel 1996)


上帝类的维 护成本很高,你很难理解正在进行的操作,并且难以测试和扩展,这就是为什么要避免创建上帝类的


黄金法则。



然而,在


An droid


开发中,如果你不考虑架构的话,


Activity


类往往会越来越大。这是因为,在


Android


中,允许


View


和其它线程共存于


Activity


内。其实最大的问题莫过于在


Act ivity


中同时存在业务逻辑和


UI


逻辑。这会增


加测试和维护的成本。




Activity


是上帝


< p>
这是为什么需要清晰架构的原因之一。


不仅会造成


Activity


的臃肿,


还会引起其他问题,


如使


Activity



Fr agment


的生命周期变复杂,以及数据绑定等。



什么是


MVP?


MVP


代表


Model



View



Presenter




?



?



?



View


层负责处理用户事件和视图部分的展示。在


Android


中,它可能是


Activity


或者


Fragment


类。

< br>


Model


层负责访问数据。数据可以是远端的


Server API


,本地数据库或者


Sh aredPreference


等。



Presenter


层是连接


(


或适配


)View



Model


的桥梁。



下图是基于


MV P


架构的模式之一。


View



UI


线程。


Presenter



View



Model< /p>


之间的适配器。


UseCase


或者


Domain



Model


层中,负责从实体获取或载入数据。依赖规则如下:




The Dependency Injection


关键是 ,高层接口不知道底层接口的细节,或者更准确地说,高层接口不能,不应该,并且必须不了解底层接口


的细节,是


(


面向


)< /p>


抽象的,并且是细节隐藏的。




The higher interfaces do not know about the details of the lower ones


依赖规则


?



Uncle Bob



“The Clean Architecture”


描述了依赖的规则是什么。



同心圆将软件划分为不同的区域,一般的,随着层级的深入,软件的等级也就越高。外圆是实 现机制,内圆是核


心策略。



这是上面片文章的摘要:



Enitities




?



?



?



可以是一个持有方法函数的对象



可以是一组数据结构或方法函数



它并不重要,能在项目中被不同应用程序使用即可



Use Cases



?



?



?



包含特定于应用程序的业务规则



精心 编排流入


Entity


或从


Entit y


流出的数据



指挥

< br>Entity


直接使用项目范围内的业务规则,从而实现


Use Case


的目标


-


-


-


-


-


-


-


-



本文更新与2021-02-27 18:50,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/675330.html

Android开发中的MVP架构的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文