RxSwift之路 2#如何开始
RxSwift之路 2#如何开始
第一步当然是把项目clone到本地,github地址:https://github.com/ReactiveX/RxSwift。
官方文档
学习的第一手资源当然是项目提供的文档。在项目的Document目录下放着项目的一些概念说明。看过项目的ReadMe后可以从 Getting Started 开始。

不过如果你之前完全没有接触过响应式编程这种概念,一开始文档可能读的不太懂,多看一些实际使用的 demo 会有更深的体会。响应式的编程思维和在 OC 流行的 ReactiveCocoa 是一致的,所以对于什么是 FRP 一些介绍 RAC 的文章一样可以看,不必拘泥。
把项目跑起来,从Playground学习API
用 cocoapod 安装后,从 workspace 打开项目,模式里选择 RxSwift-macOS 然后编译项目。Rx 非常友好的写了一个展示 API 的 Playground。在导航里选中 Rx.playground 文件。

在 Playground 里可以看到各个 API 的使用方式和一些说明。

如果想要自己测试某个 API,可以展开 Rx,选中二级里的文件 Playground,就可以在里面自己写代码运行看某个 API 的运行结果。

视频
realm的学院网站放了一个Rx的专题,入门的时候也可以去看看:
Learning Path: RxSwift from Start to Finish 。

书
Rx 的书我只看到过一本。购买地址:https://store.raywenderlich.com/products/rxswift

虽然这本书有点贵需要55刀,但是里面的知识也值这个价。对于初学者而言买这本书对着边做边学是一个很好的路径。
需要指出的是这本书还是更多的停留在如何使用好 Rx 上,对于一些具体的设计实现没有深入提及。所以在读完这本书后依然建议读一遍官方文档,再探究一下源码。
有一本介绍 RAC 的书,如果你项目是 OC 也可以看看这本,这本内容比较少大概100页,网络上也有盗版资源。购买链接:https://leanpub.com/iosfrp 。

app
Rx 的操作符实在是有点多,有时也可能记不清,可以下载 RxMarbles 查询。



其他
推荐两篇博文。一篇李忠的是时候学习 RxSwift 了。一篇 riddle 的 iOS响应式架构。如果没有从更高的抽象理解为什么需要一个响应式的框架是用不好的 Rx 的。
有用 Slack 还可以加下 RxSwift 的频道:https://rxswift.slack.com 。当然请不要在里面说中文。

RxSwift之路 2#如何开始的更多相关文章
- RxSwift之路 1#Swift语法知识准备
RxSwift之路 1#Swift语法知识准备 在开始学习 RxSwift 之前,一定要对 Swift 相关语法有所了解,否则就很难理解为什么可以这样.关于 Swift 的学习其实只要看看 Swift ...
- webp图片实践之路
最近,我们在项目中实践了webp图片,并且抽离出了工具模块,整合到了项目的基础模板中.传闻IOS10也将要支持webp,那么使用webp带来的性能提升将更加明显.估计在不久的将来,webp会成为标配. ...
- 多线程爬坑之路-Thread和Runable源码解析之基本方法的运用实例
前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...
- JavaScript进阶之路(一)初学者的开始
一:写在前面的问题和话 一个javascript初学者的进阶之路! 背景:3年后端(ASP.NET)工作经验,javascript水平一般般,前端水平一般般.学习资料:犀牛书. 如有误导,或者错误的地 ...
- jQuery学习之路(1)-选择器
▓▓▓▓▓▓ 大致介绍 终于开始了我的jQuery学习之路!感觉不能再拖了,要边学习原生JavaScript边学习jQuery jQuery是什么? jQuery是一个快速.简洁的JavaScript ...
- 记录我这一年的技术之路(nodejs纯干货)
2015年12月28日23:19:54 更新koa应用.学习型网站和开发者工具等 coding伊始 开始认认真真的学习技术还是2015.10.21日开始的,记得很清楚,那天,是我在龙湖正式学习的第一天 ...
- 一个IT人的成长路
毕业四年多了,来深圳三年多了,经历了刚毕业的懵懂少年,成长为现在的成熟稳重青年.职场上,从刚毕业的小白,成长为现在可以成熟应对各种事情的老司机.经历过从初级研发工程师,到中级研发工程师,到高级研发工程 ...
- redis成长之路——(二)
redis操作封装 针对这些常用结构,StackExchange.Redis已经做了一些封装,不过在实际应用场景中还必须添加一些功能,例如重试等 所以对一些常功能做了一些自行封装SERedisOper ...
- redis成长之路——(一)
为什么使用redis Redis适合所有数据in-momory的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed的功能,跟传统意义上的持久化有比较大的差别,那么可能大家就 ...
随机推荐
- window.location方法获取URL
window.location方法获取URL 统一资源定位符 (Uniform Resource Locator, URL) 完整的URL由这几个部分构成: scheme://host:port/pa ...
- POJ1125-Stockbroker Grapevine【Floyd】(模板题)
<题目链接> 题目大意: 题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),然后接下来N行描述第i(1<=i<=N)个经纪人与其他经纪人的 ...
- 附002.Docker常见命令
# docker --help Usage: docker [OPTIONS] COMMAND [arg...] docker daemon [ --help | ... ] docker [ -h ...
- 微信小程序:一起玩连线,一个算法来搞定
微信小程序:一起玩连线 游戏玩法 将相同颜色的结点连接在一起,连线之间不能交叉. 算法思想 转换为多个源点到达对应终点的路径问题,且路径之间不相交.按照dfs方式寻找两个结点路径,一条路径探索完之后, ...
- 幕布V1.1.9最新版漏洞集合
0X00 前言 幕布本人最早接触是在P神的知识星球里面看到P神推荐的,后来下了个用着还挺好用. 之前一直都放一些零零散散的笔记,最近整理的时候,一时兴起,本着漏洞源于生活的态度,遂对幕布的安全性做了些 ...
- Alpha冲刺随笔五:第五天
课程名称:软件工程1916|W(福州大学) 作业要求:项目Alpha冲刺(十天冲刺) 团队名称:葫芦娃队 作业目标:在十天冲刺里对每天的任务进行总结. 随笔汇总:https://www.cnblogs ...
- 解决iframe重复嵌套登陆页面的问题
在login.jsp中加入即可 // 在被嵌套时就刷新上级窗口 if(window.parent != window){ window.parent.location.reload(true); }
- 2016/2/26Android实习笔记(Android签名和aapt)
1. 我们平时用eclipse或Android Studio开发得到的android应用程序,其实已经添加有默认的debug签名了. Android系统要求所有的程序经过数字签名才能安装,如果没有可用 ...
- String、StringBuffer、StringBulider
三者都实现了CharSequence接口,因此CharSequence可认为是一个字符串的协议接口 1.String类是不可变类,即一旦一个String对象被创建后,包含在这个对象中的字符序列是不可改 ...
- json字符串转换对象的方法
为了方便读者了解json的使用,读者直接粘贴下面代码看效果即可: var json1 = {'name':'小李','age':'11','sex':'女'}; console.log(json1.n ...