zoukankan      html  css  js  c++  java
  • MVC、MVP和MVVM的异同

    No1:

    Model一般用来保持程序的数据状态,比如数据存储、网络请求等

    No2:

    Android开发中应用到MVC的地方:比如ListView与Adapter,如果把ListView看作View层,那么Adapter则可以看作Controller,获取ListView展示数据的相关实现类则看作Model。

    如果把思维放大,也可以把Android中的xml布局/View类看作View层,而把Activity看作是Controller层,Model层则由相关的数据操作类承担。

    No3:

    MVP模式可以分离显示层和逻辑层,它们之间通过接口进行通信,降低耦合。

    No4:

    NavigationView就是MVP设计模式的一个真实案例,Toolbar的菜单解析也遵循MVP设计模式。

    No5:

    MVVM:Model-View-ViewModel

    View和ViewModel内部通过一个Binder进行事件交互,该Binder通过双向绑定将View与ViewModel中与对于数据操作的部分链接,当对应数据由更新时同样会自动地反馈到View层上。

    No6:

    要想在Android中快速地应用MVVM,最好的方式是使用谷歌官方提供的DataBinding来作为双向绑定的工具,其本质是帮助我们实现MVVM中Binder的功能。

    在Module的build.gradle文件里配置

    dataBinding{
       enabled = true  
    }

    No7:

    MVC、MVP与MVVM的异同

  • 相关阅读:
    Queue
    List
    面试1
    野指针和空指针
    指针的定义和使用
    多文件编程
    函数声明
    函数样式
    字符串比较
    函数的定义和使用
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/7978330.html
Copyright © 2011-2022 走看看