苹果的MVC模式是怎样的?

2020-06-12  本文已影响0人  会飞的猪X

相信大多数小伙伴对MVC这个模式很熟悉,近段时间在看设计模式,我们平时使用的MVC模式和苹果所倡导的MVC还是有出入的。

顾名思义:

M(数据层):提供数据模型、如通过(调接口、数据库)把数据存储到模型对象中

V(视图层):提供视图展示、也可与用户交互

C(控制层):协调M(数据层)和V(视图层) 把数据处理后存入模型,并把数据更新到对应的视图

传统的MVC模式

传统的MVC:模型层(M)和视图层(V) 之间是存在依赖关系,在数据发生变化的时候:

1、当视图(V)要发生改变的时候请求模型(M)更新状态

2、当模型(M)发生变化的时候需要通知视图(V)更新外观

苹果版MVC模式

苹果版MVC

打个比喻:

比如我们玩乐高,我们拿(控制C)一堆积木 (数据)照着图纸 (模型M) 搭建玩具(视图V

积木:数据    

我们: 控制层(C)    

图纸: 模型层(M)    

玩具:视图层(V)    

苹果版的MVC:模型层 (M) 和视图层 (V) 是完全隔离的,双方不知道对方的存在,而是通过控制层(C)去更新视图层(V)的展示和模型层(M)数据的更新。

把控制权完全交给控制器(C), 模型(M)和视图(C)不会形成依赖关系,这样做的好处是能更好的实现复用。

参考链接:苹果设计模式

上一篇下一篇

猜你喜欢

热点阅读