RAC <一> 初识RAC库

RAC全称 : ReativeCocoa 响应式编程的一个框架。(重量型框架,好比 AFN) RXSwift ....是对自己语言特性上进行一个扩展。面试

RAC能作什么?编程

简单粗暴的处理事件。swift

什么是响应式编程?网络

响应式编程简单理解就是 。修改一处地方,另一个地方不用运行能够跟着自动修改变化。 例如,在命令式编程环境中,a:=b+c表示将表达式的结果赋给a,而以后改变b或c的值不会影响a。但在响应式编程中,a的值会随着b或c的更新而更新。 5 = 3 + 2 。 修改后面的表达式值,5也会跟着更新。框架

问题来了:异步

在事件发生做出响应? 在iOS开发中常遇到的事件有哪些?学习

Target ,Delegate , KVO , 通知, 时钟, 网络异步回调......blog

全部框架都叫Cocoa。事件

pod 'ReactiveObjC' 引入进来。开发

为何要学 RAC ?

1.面试须要,增长面试谈资。 (美团,今日头条.......都在用) 2.如何自学一个框架。

RAC是 Github 团队一共19人共同开发的一个开源项目。 超级重量级的框架。

RAC的目的: 事件的监听。接管了苹果全部的事件机制。 好比:Target ,Delegate 协议, KVO , 通知, 时钟, 网络异步回调......

RAC 特色:学习曲线异常的陡峭。监听的事件比较多,一个个学的话比较太耗费时间。 团队开发时候须要谨慎使用,虽然比较好用。 须要不断的代码审核, 保证团队全部人的代码风格一致。

RAC 2.5的版本不支持 Swift . 3.0 最后纯OC 的 RAC 版本。 也能够直接用 ReactiveObjC. 不然版本号不要超过3.0. 4.0支持swift2.0.

思惟导图:

几个基本概念: 它是怎么作到事件的监听的? 苹果的事件机制 ------- 把它全都包装成 信号。 之前各类处理方式,如今都用信号作管理,把它都包装成信号后,调用的话 有一个 订阅者 来调用它, 当订阅者接到改变,信号发生了改变,发送 通知 订阅者有改变。

相关文章
相关标签/搜索