美文网首页前端知识点
MVVM、MVC、MVP的介绍、区别和作用

MVVM、MVC、MVP的介绍、区别和作用

作者: 朝树 | 来源:发表于2019-07-25 08:25 被阅读63次

    MVVM 是 Model-View-ViewModel 的缩写。mvvm 是一种设计思想。Model 层代表数据模型,也可以在 Model 中定义数据修改和操作的业务逻辑;View 代表 UI 组件,它负责将数据模型转化成 UI 展现出来,ViewModel 是一个同步 View 和 Model 的对象。

    MVC是Model-View- Controller的简写。即模型-视图-控制器。M和V指的意思和MVVM中的M和V意思一样。C即Controller指的是页面业务逻辑。使用MVC的目的就是将M和V的代码分离。‘MVC是单向通信。也就是View跟Model,必须通过Controller来承上启下。MVC和MVVM的区别并不是VM完全取代了C,ViewModel存在目的在于抽离Controller中展示的业务逻辑,而不是替代Controller,其它视图操作业务等还是应该放在Controller中实现。也就是说MVVM实现的是业务逻辑组件的重用。

    1. View 传送指令到 Controller

    2. Controller 完成业务逻辑后,要求 Model 改变状态

    3. Model 将新的数据发送到 View,用户得到反馈

    MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向。

    1. 各部分之间的通信,都是双向的。

    2. View 与 Model 不发生联系,都通过 Presenter 传递。

    3. View 非常薄,不部署任何业务逻辑,称为"被动视图"(Passive View),即没有任何主动性,而 Presenter非常厚,所有逻辑都部署在那里。

    相关文章

      网友评论

        本文标题:MVVM、MVC、MVP的介绍、区别和作用

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