iOS架构模式mvc、mvp、mvvm

2018-06-06  本文已影响0人  V_544c

mvp,mvvm都是从mvc 延伸过来了 都是为了解决耦合性的

两个类间的耦合性解决:delegete,block,通知

mvc

你中有我我中有你

耦合性较高

控制器任务繁重:delegete,action,model数据,view布局

mvp 协议时编程

vc命令p请求数据,p命令m请求数据返回给p,v准守p协议实现方法更改ui,

v产生事件命令p请求数据,p命令m请求数据返回给p,v准守p协议实现方法更改ui

presenter中介者  中转站  将view和model及controller之间的交互交由presenter处理,presenter通过协议与view进行交互,通过接口与controller交互

mvvm 响应式编程

view    vm    双向绑定  kvo或者rac

view产生的事件 通过接口传递给vm  ,vm改变数据

view通过kvo观察vm持有的model的数据变化  来更改view

上一篇 下一篇

猜你喜欢

热点阅读