美文网首页OC架构
iOS中MVVM架构 浅显理解

iOS中MVVM架构 浅显理解

作者: 曹九朵_ | 来源:发表于2017-05-03 18:33 被阅读32次

    MVVM

    它和常见又熟悉的MVC比较类似,我把这种架构模式理解为MVC的演变和优化.关于他们的对比,我想看过一些文章总是会有一些理解的.但真正意识到他们的差别和优缺点,还是要切实实践起来.

    当你的代码越来越健壮,越来越易修改和维护,你也会乐在其中~

    Don't BB, you need code!
    
    先说两大优点
    • 低耦合 :由于ViewModel中抽离出来了部分逻辑 使得视图(View)可以独立于Model变化和修改
    • 可重用 : 处理试图逻辑的ViewModel 可以绑定在多个view上
    别人画的一个比较清晰易懂的图
    Model

    数据传输对象

    View

    相对于MVC模式 真正的成为了View层 包括View和ViewController两部分
    但是view还是那个view VC却是瘦了的VC
    View负责展示UI视图
    ViewController负责绑定 viewModel 中的属性,触发 viewModel 中的命令

    ViewModel

    专治疑难杂症的地方 ,在这里可以处理业务逻辑,视图显示逻辑,也就是把传统MVC中ViewController臃肿冗长的业务逻辑,网络请求等单独提炼出来,达到ViewController的最大瘦身(这里不能处理UI层,也就是说不要导入UIKit).

    相对MVC中view controller逻辑复杂,进行单元测试也是非常艰巨的...而MVVM中view model包含了所有的展示逻辑并且不会引用view,所以它可以通过编程方式充分测试

    老生常谈的事情 这没过多营养的文章 只当记录罢

    参考文章
    http://www.cnblogs.com/brycezhang/p/3840567.html
    http://www.jianshu.com/p/ffcb84dc4ebc
    https://github.com/lizelu/MVVM

    相关文章

      网友评论

      本文标题:iOS中MVVM架构 浅显理解

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