美文网首页
MVC,MVP,MVVM架构比较总结

MVC,MVP,MVVM架构比较总结

作者: MichaelDing | 来源:发表于2019-09-29 17:00 被阅读0次

    传统的MVC架构模式是:
    M:Model,负责数据库及网络数据封装处理,V:View,负责视图渲染和用户交互和触摸事件,C:ViewController负责业务逻辑处理,三者的联系是Controller通过调用API请求完数据后封装成Model,然后供View层直接调用,在这里View层是直接调用model的,MVC的好处是分层架构,结构清晰,但是ViewController业务逻辑处理复杂,代码臃肿,需要处理model
    然而MVP的架构模式是:
    M:Model:负责数据处理,V:View视图层, P:Present层,与传统的MVC不同的是,MVP中View层并没有直接使用model层数据,而是通过中间件Present间接使用,即:Present通过Service层调用api接口后先进行数据处理和封装,然后以接口或者协议的方式通过View层将数据传给View层控制器进行使用,这样的好处是Controller层只进行业务逻辑处理,view层进行数据渲染,二Model层只负责数据解析,分工明确且解耦,缺点是:协议接口较多
    MVVM的架构模式是:M:Model层负责数据库及网络数据解析,V:视图层,用于根据数据源进行UI创建和用户交互点击事件,VM:业务逻辑层,数据请求,将api数据请求的结果封装转化成view层识别的数据,一般是一个方法,最后发给View层(UIViewController,UIVIew)调用
    可以理解为:api进行数据请求后进行数据解析,然后再ViewModel层转化为可以被View层识别可用的数据,进而再传给View层使用

    相关文章

      网友评论

          本文标题:MVC,MVP,MVVM架构比较总结

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