MVVM和RAC介绍
来源:互联网 发布:mac的caj阅读器 编辑:程序博客网 时间:2024/06/05 16:39
一、ReactiveCocoa
RAC完全颠覆了传统的开发模式,使消息传递回调等机制复杂问题简单化,初始化与回调放在一起,使整个逻辑很具条理化。
ReactiveCocoa结合了一些编程模式:
1.函数式编程:利用高阶函数,即将函数作为其它函数的参数。
2.响应式编程:关注于数据流及变化的传播。
基于以上两点,ReactiveCocoa被当成是函数响应编程(Functional Reactive Programming, FRP)框架。
二、MVVM
在MVVM中View和ViewController通过视图模型ViewModel正式联系在一起。 ViewModel是一个放置用户输入验证逻辑,视图显示逻辑,发起网络请求和其他各种各样代码的好地方。 ViewModel不引用UIKit。 展示逻辑放在了ViewModel中,比如Model的值映射到一个格式化字符串。实际上就是把原来ViewController做的一些事情放到了ViewModel中进行,为ViewController减负。
在我看来,如果页面逻辑比较简单,比如实现一个列表的逻辑,MVC就足矣。没必要使用相对复杂的逻辑如MVVM或MVP。
三、MVVM+RAC
ReactiveCocoa所扮演的角色:进行ViewModel连接”粘合”工作
1.例如在ViewController中给ViewModel的某个属性绑定信号,实时监听属性的变化。每当属性发生变化,ViewModel中就会发生一个信号出来,ViewController中对应的属性订阅这个信号,在订阅到这个信号的回调中执行后面的逻辑。
2.利用RACCommand执行execute方法来返回一个signal,订阅这个signal,这个signal中可以利用 initWithSignalBlock方法返回一个经过处理的signal,比如要把网络请求的数据返回并且解析成模型数组,都可以放在这个block中进行处理。
参考:https://github.com/MikeZhangpy/RAC-MVVMTest
- MVVM和RAC介绍
- 通俗易懂图解MVVM和RAC双向绑定介绍(附Demo)
- 介绍一个使用 MVVM 和 RAC 开发的开源项目 MVVMReactiveCocoa
- MVVM+RAC
- MVVM+RAC
- MVVM+RAC
- RAC And MVVM (一)
- iOS架构:MVVM+RAC
- RAC + MVVM 2
- RAC + MVVM 1
- MVVM + RAC 实践
- 九,Runtime&mvvm&Rac
- iOS 浅谈MVVM+RAC
- RAC--MVVM 心得
- iOS MVC和MVVM简单介绍
- 简单介绍MVC、MVP和MVVM模式
- MVC和MVVM以及MVP的介绍
- MVVM 介绍
- hive启动异常:Cannot create directory /tmp/hive/。。。Name node is in safe mode.
- LeetCode-33-Search in Rotated Sorted Array 水题
- 欢聚时代2017校招笔试题目(JAVA基础类)A卷--7
- 1017. Queueing at Bank (25)
- 百行go代码构建p2p聊天室
- MVVM和RAC介绍
- 从URDF到KDL(C++&Python)
- Redux-API
- Java内部类
- mybatis内的一些区别
- 最大类间方差法
- cudnn 免登陆下载
- Qt中的布局管理器
- 安卓开发一些常用的颜色表