mvp架构模式 如何看待android mvp设计模式的优缺点?
如何看待android mvp设计模式的优缺点?
MVP,全称 Model-View-Presenter 。
MVP模式是MVC模式的改良。在上个世纪90年代,IBM旗下的子公司Taligent在用C/C 开发一个叫CommonPoint的图形界面应用系统的时候提出来的。
在MVP模式里通常包含4个要素:
(1) View :负责绘制UI元素、与用户进行交互(在Android中体现为Activity)
(2) View interface :需要View实现的接口,View通过View interface与Presenter进行交互,降低耦合,方便进行单元测试
(3) Model :负责存储、检索、操纵数据(有时也实现一个Model interface用来降低耦合)
(4) Presenter :作为View与Model交互的中间纽带,处理与用户交互的负责逻辑。
优点:
1、降低耦合度,实现model和view的分离,可以修改view而不影响m层。
2、模块职责划分明确,层次清晰。
3、presenter可以复用。
4、利于进行单元测试。
5、view可以进行组件化。
缺点:
1、presenter中除了逻辑,还有大量的view ->model, model ->view的手动同步逻辑,使得presenter笨重,维护困难。
2、试图和presenter交互过于频繁。
3、presenter过多的渲染视图,会让他们联系更紧密。
4、额外的代码量和学习成本。
所以,如果是小项目工程,没有必要使用mvp,如果为了以后更好的架构,建议学习之后,再重构。
Android程序员要有几年的开发经验和什么程度的技术,可以达到年薪50W呢?
打工50w基本不可能吧,如果进入BAT有股权的话大概是可以,但是很多坑都被占完了,过去也就是高级搬砖人员,很难,很难,建议自己开发一套软件自己来运营还是有点机会。
mvp模式和mvc的区别?
MVC(Model View Controller)是软件工程中的一种软件架构模式,它把软件系统分为模型、视图和控制器三个基本部分。用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
MVP 全称:Model-View-Presenter ;MVP 是MVC演变而来,但MVP和MVC有着重大的区别:在MVP中View并不直接使用Model,它们之间的通信是通过Presenter (MVC中的Controller)来进行的,所有的交互都发生在Presenter内部,而在MVC中View会直接从Model中读取数据而不是通过 Controller。
在MVC里,View是可以直接访问Model的!从而,View里会包含Model信息,不可避免的还要包括一些业务逻辑。 在MVC模型里,更关注的Model的改变,而同时有多个对Model的不同显示,即View。所以,在MVC模型里,Model不依赖于View,但是View是依赖于Model的
mvp架构模式 android开发框架mvp android mvp模式
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。