这是根据整理之后我用苹果的预览工具画的,难看将就一下… …
首先得知道,MVC是啥玩意儿:
M:Model
V :View
C :Controller
即 模型-视图-控制器模式
Model(模型):模型是应用程序中用于处理应用程序数据逻辑的部分。通常model对象负责在数据库中存取数据。
Model 和Controller实际是不能直接与Controller通讯,因为Model是独立于UI存在的。不过,若Model想发生改变,能通过通知机制来通知Controller,KVO和Notification
View(视图):视图是应用程序中处理数据显示的部分。通常视图是依据模型创建的。
View 通过action-target方式 访问Controller,如在storyboard拖一个button,点击按钮,view就将信息传递给Controller。
View 可以通过协议获取Controller而不是model中的数据用来展示。
Controller(控制器):控制器是应用程序处理用户交互的部分。Controller负责从视图读取数据,控制用户输入,并向模型发送数据。
Controller有时需要实时监控View,这时需要通过protocol将其自身设为View的delegate。
Controller 整理 Model 中的数据给 View展示。
View和Model是不能互相通信的。
这就是MVC模式~