美文网首页
MVP MVVM MVC 个人总结

MVP MVVM MVC 个人总结

作者: frank_松 | 来源:发表于2020-03-29 15:14 被阅读0次

    在简书上总结下,场景的三种设计模式MVP MVC MVVM
    由于我的技术栈是VUE,属于MVVM开发模式,因此对MVVM根据熟悉一点。如果有什么错误欢迎指出。
    本文主要是查看阮一峰大佬的文章学习的,附上链接

    一、MVC

    MVC分三层

    M:模板层 -- 数据
    V:视图层 -- 用户操作界面
    C:控制层 -- 逻辑处理

    他们之间的数据都是单向流动的,一般是这样:

    image.png

    上图应该是最常见的MVC模式,用户在视图层进行操作,视图层将指令发送给控制层,控制层做出逻辑处理后更新数据。数据层更新后通知视图进行更新,用户得到反馈。

    二、MVP


    image.png

    如上图所示,Controller被改成了Presenter。V与M不再直接通信,统一通过P层进行相互通信。
    其中,View、Model与Presenter的通信都是双向的。
    视图层的业务很少,所有的逻辑都被封装在Presenter中。

    PS:因为我个人从来没用过MVP模式,可能理解的不透彻。

    三、MVVM


    image.png

    可以看出了MVVM和MVP模式非常类似,唯一的区别就是ViewModel和View采用双向绑定的方式进行通信。

    比如在VUE中,数据和视图能形成双向绑定的关系。视图层的改动会同步到数据,反之亦然。这个操作不用开发者主动写逻辑去实现,因为框架已经帮你封装好了。使用MVVM模式,开发者只需要关注业务逻辑即可,层级通信由框架代劳。

    相关文章

      网友评论

          本文标题:MVP MVVM MVC 个人总结

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