首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
ReactiveCocoa 源码分析
订阅
一缕殇流化隐半边冰霜
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 161订阅
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(中)
前言 紧接着上篇的源码实现分析,继续分析RACSignal的变换操作的底层实现。 目录 1.过滤操作 2.组合操作 一. 过滤操作 过滤操作也属于一种变换,根据过滤条件,过滤出符合条件的值。变换出来的新的信号是原信号的一个子集。 1. filter: (在父类RACStream…
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(上)
前言 在上篇文章中,详细分析了RACSignal是创建和订阅的详细过程。看到底层源码实现后,就能发现,ReactiveCocoa这个FRP的库,实现响应式(RP)是用Block闭包来实现的,而并不是用KVC / KVO实现的。 在ReactiveCocoa整个库中,RACSig…
ReactiveCocoa 中 RACSignal 是如何发送信号的
前言 ReactiveCocoa是一个(第一个?)将函数响应式编程范例带入Objective-C的开源库。ReactiveCocoa是由Josh Abernathy和Justin Spahr-Summers 两位大神在对GitHub for Mac的开发过程中编写的。Justi…
ReactiveCocoa 中 RACScheduler是如何封装GCD的 | 掘金技术征文
前言 在使用ReactiveCocoa 过程中,Josh Abernathy和Justin Spahr-Summers 两位大神为了能让RAC的使用者更畅快的在沉浸在FRP的世界里,更好的进行并发编程,于是就对GCD进行了一次封装,并与RAC的各大组件进行了完美的整合。 自从有…
ReactiveCocoa 中 RACCommand 底层实现分析
前言 在 ReactiveCocoa 过程中,除去 RACSignal 和 RACSubject 这些信号类以外,有些时候我们可能还需要封装一些固定的操作集合。这些操作集合都是固定的,每次只要一触发就会执行事先定义好的一个过程。在 iOS 开发过程中,按钮的点击事件就可能有这种需求。那么 RA…
ReactiveCocoa 中 RACSignal 冷信号和热信号底层实现分析
前言 关于ReactiveCocoa v2.5中冷信号和热信号的文章中,最著名的就是美团的臧成威老师写的3篇冷热信号的文章: 细说ReactiveCocoa的冷信号与热信号(一)细说ReactiveCocoa的冷信号与热信号(二):为什么要区分冷热信号细说ReactiveCoc…
ReactiveCocoa 中 集合类 RACSequence 和 RACTuple 底层实现分析 | 掘金技术征文
前言 在 OOP 的世界里使用 FRP 的思想来编程,光有函数这种一等公民,还是无法满足我们一些需求的。因此还是需要引用变量来完成各式各样的类的操作行为。 在前几篇文章中详细的分析了 RACStream 中 RACSignal 的底层实现。RACStream 还有另外一个子类,RACSequen…
ReactiveCocoa 中 奇妙无比的 “宏” 魔法
前言 在 ReactiveCocoa 中,开源库作者为我们提供了很多种魔法,“黑”魔法,“红”魔法…… 今天就让先来看看 “红” 魔法。 在 ReactiveCocoa 中,封装了很多非常实用的 “宏”,使用这些“宏” 为我们开发带来了很多的便利。 今天就来盘点一下 RAC 中的宏是如何实现的。…
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(下)
前言 紧接着上篇的源码实现分析,继续分析RACSignal的变换操作的底层实现。 目录 1.高阶信号操作 2.同步操作 3.副作用操作 4.多线程操作 5.其他操作 一. 高阶信号操作 高阶操作大部分的操作是针对高阶信号的,也就是说信号里面发送的值还是一个信号或者是一个高阶信号…