美文网首页
MVC,MVP,MVVM的相关简介

MVC,MVP,MVVM的相关简介

作者: 蔡森屿 | 来源:发表于2018-08-10 17:32 被阅读0次

    MVC

    我们在开发软件时一般可以分为三部分分别是:

    • 模型(Model):数据
    • 视图(View):界面显示
    • 控制器(Controller):业务逻辑
      这三部分的是如何相互联系的呢?

    首先这三种的数据通讯都是单向的,其中View传送指令到Controller,Controller完成业务逻辑后,要求Model改变状态,Model将新的数据发送到View,用户得到反馈。

    MVP

    MVP模式是由于Android中mvc模式的Activtiy过重,业务逻辑界面操作都耦合在了一起,不便于维护所以衍生出了MVP模式来解决这个问题。

    mvp模式三个部分分别是:

    • 模型(Model):负责存储、检索、操纵数据
    • 视图(View):负责绘制UI元素、与用户进行交互
    • 主持者(Presenter):作为View与Model交互的中间纽带,处理与用户交互的负责逻辑。
      那么MVP模式究竟是怎么样的呢?

    首先mvp中各部分之间的通信,都是双向的,View和Model不发生联系,都通过Presenter传递,所以View非常薄,不部署任何业务逻辑,称为"被动视图"(Passive View),即没有任何主动性,而Presenter非常厚,所有逻辑都部署在那里。

    MVVM

    MVVM模式将Presenter改名为ViewModel,基本上与MVP模式完全一致。

    唯一的区别是,它采用双向绑定(Data Binding 是一个 support 包,因此与 Android M 没什么关系,可以不用下载 Android MNC Preview 的 SDK。):View的变动,自动反映在ViewModel,反之亦然。

    相关文章

      网友评论

          本文标题:MVC,MVP,MVVM的相关简介

          本文链接:https://www.haomeiwen.com/subject/kijlbftx.html