美文网首页
了解MVC、MVP、MVVM

了解MVC、MVP、MVVM

作者: 落魄的iOS程序员 | 来源:发表于2021-04-05 08:25 被阅读0次

            MVC即Model - View -Controller,MVP即Model - View - Presenter,MVVM即Model - View - ViewModel,我们可以看出其实三者都差不多,都可看做是数据 - 视图 - 控制层,那么三者区别在哪里呢?

            MVC其实就是Model处理数据,Controller负责处理逻辑将Model的数据发送给View,View负责更新显示数据;

            MVP中是以Presenter为核心,而Presenter可以看出是Controller拆分成view+Presenter,view和View合并,Presenter将Api暴露给Controller调用实现Controller和view的联系来实现响应和数据更新,和MVC的区别就是view和controller之间的解耦,view和Presenter通过协议来实现。

            MVVM就是将三者都解耦,实现双向绑定,通过观察者模式来实现,ViewModel监控view和Model,当Model数据更新时,通知view更新数据;

            MVC、MVP、MVVM个人理解三者关系其实就是一个解耦的进阶,但是数据、视图和控制层之间的联系越少其实相对越复杂,越复杂的架构耦合度越小,但是开发速度越慢,所以我们在开发中应该更加自己项目需求选择合适的架构进行开发。

    相关文章

      网友评论

          本文标题:了解MVC、MVP、MVVM

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