zoukankan      html  css  js  c++  java
  • ios开发里的mvc通信模型

    在ios开发里面,我们经常用到各种设计模式, 其中最经典最常用的就是mvc模型,它们的设计模式是怎样的呢?

    可以通过下面的两张图来了解:

                                                                                 图一:单个MVC之间的通信方向

    M(模型)和V(视图)还有C(控制器)的通信方向可以简单通过汽车在马路上行驶指示线来表示,模型和控制器之间是控制器可以访问模型,而模型不能访问控制器,但是有些时候模型发生变化了,要告诉控制器,就要通过一个叫广播台的机制来广播,控制器收到广播后,会做出特定的操作,比如:更新视图。

    视图和控制器之间的通信方向是,控制器可以访问视图,但是视图不能访问控制器,当视图发生改变或者需要数据时,就会通过Action的Outet输出口来告诉控制器,视图发生改变了,控制器就会执行特定操作,比如访问模型,更新UI等。

    而视图和模型之间的通信是不允许的。

                                 图二:多个MVC模型之间的设计

    当有多个MVC时,它们是通过把其中的一个mvc作为另一个mvc的V,只有一个单向的跳转,这样的好处就是,它们之间的业务逻辑不会太复杂,当程序出现问题时就不会很混乱,可以快速找出问题出现在哪?

  • 相关阅读:
    2020-07-21日报博客
    java第十九天
    Java第十八章
    Java第十七天
    Java第十六天
    Java第十五天
    Java第十四天
    Java第十三天
    Pytorch-数据增强
    Pytorch-实现ResNet-18并在Cifar-10数据集上进行验证
  • 原文地址:https://www.cnblogs.com/panxiaochun/p/5041670.html
Copyright © 2011-2022 走看看