如何理解MVC设计模式

MVC是一种架构模式,M表示Model,V表示视图,C表示控制器Controller。

  • Model负责存储、定义和操作数据
  • View用来展示给用户,和用户进行操作交互。
  • Controller 是Model和View的协调者。Controller把Model中的数据拿过来给View用。Controller可以直接与Model和View进行通信,而view不能和Controller直接通信。View与Controller通信需要通过代理协议或者闭包等方式。当有数据更新时,Model也要与Controller进行通信,这时候需要用到Notification和KVO,这个方式就像广播一样,Model发信号,Controller设置监听接收信号。View和Model不能直接进行通信,这样会违背MVC设计模式。

如何理解MVVM设计模式

  • ViewModel层,就是View和Model层的粘合剂,他是一个放置用户输入输出验证逻辑,视图显示逻辑,发起网络请求和其他各种各样的代码的极好的地方。说白了,就是把原来ViewController层的业务逻辑和页面逻辑等剥离出来放到ViewModel层,给Controller层瘦身。
  • View层,他的任务就是从ViewModel层获取数据,然后显示。

你可能感兴趣的:(如何理解MVC设计模式)