用测试用例探索 Combine 的工作机制
用测试用例探索 Combine 的工作机制
关于本书
在这个小册子里,我们会尝试用一些测试用例探寻 Combine 的工作机制。而整理这些内容的动力,则源 于开发泊学 App 的时候,把代码迁移到 Combine 过程中时遇到的一个 Bug。至于这个 Bug 本身,我们会在这个册子的最后才向大家揭晓,因为只有到那个时候,你可能才真的能理 解我在说什么。相信我,如果你希望尝试使用 Combine 开发一些应用,理解我们接下来要 讨论的东西真的可以为你节约很多时间。 因此,这不是一个 Combine 的入门教程,所以,确保你在继续之前,至少要体验过 Combine, 如果你还有 RxSwift4 的开发经验,就更好了:)
这本册子中用到的全部代码,都在这里。 除了文字内容之外,我们还为每一章内容录制了影片,它们也是完全免费的。影片的链接,
会放在每一章的开始,大家可以直接点击观看(无需注册)。
目录
-
写在前面
- 关于代码和影片
- 关于邀请码
-
Chapter One Combine 中的订阅和发布模型
- 影片地址
- Combine 中的发布者和订阅者
- 观察 Combine 的事件订阅模型
- What’s next?
-
模拟 Subscription 实现 - I
- 影片地址
- 一个完整的订阅发布模型
- 自定义 Subscription 实现
- What’s next?
-
模拟 Subscription 实现 - II
- 影片地址
- 自定义 Publisher
- What’s next?
-
模拟 Subscription 实现 - III
- 影片地址
- 自定义 CustomScan
- 通过单元测试验证模型
- What’s next?
-
让 CustomSubject 线程安全
- 影片地址
- AtomicBox
- CustomSuject 的线程安全性
- What’s next?
-
让 CustomSubject 线程安全
- 影片地址
- 共享 Subject
- 缓存计算出来的事件
- What’s next?
-
实现自定义的事件缓冲区 - I
- 影片地址
- 定义 Buffer
- 自定义 SubscriptionBehavior
- What’s next?
-
实现自定义的事件缓冲区 - I
- 影片地址
- BufferSubject
- 用单元测试验证结果
- What’s next?
-
有些意外的 Subject 生命周期
- 影片地址
- 从一个最自然的模型开始
- 不会自动取消的订阅者
- 一个不需要任何强引用的场景
- What’s next?
-
Combine 中的多重订阅 - I
- 影片地址
- 什么是多重订阅呢
- MergeSink
- What’s next?
-
Combine 中的多重订阅 - II
- 影片地址
- 从测试用例开始
- 无法“续命”的订阅
- What’s next?
-
Combine 事件供给机制的回顾
- 影片地址
- CustomDemandSink
- CustomDemandSink
- 编写测试用例
- What’s next?
-
Combine 中的异步事件调度
- 影片地址
- 一个形式上异步的测试用例
- 一个会丢事件的订阅场景
- 一个便于观察 Publisher 的方法
- 重新观察之前的丢消息场景
- 妥善使用 receive(on:) 的方法
- What’s next?
- At Last
Leanpub 无条件、零风险的100%满意保证
在支付后的60天内,只需简单点击两下,您便可以退书并且取回先前支付的全部金额。退款是手动处理的,因此可能需要几天时间来完成整个流程。
查看完整条款。
在$10的购买中赚$8,在$20的购买中赚$16
我们在$7.99或以上的购买中支付80%的版税,并在$0.99至$7.98的购买中支付80%的版税减去50美分的固定费用。在$10的销售中赚$8,在$20的销售中赚$16。因此,如果我们以$20销售5000本未退款的书,您将赚取$80,000。
(是的,一些作者已经在Leanpub上赚了很多钱。)
实际上,作者在Leanpub上赚取了超过1300万美元通过写作、出版和销售。
了解更多关于Leanpub写作的信息
免费更新。无DRM。
如果你购买了Leanpub的书,只要作者更新这本书,你就可以免费获得更新!许多作者使用Leanpub在他们编写书籍的过程中发布他们的作品。所有读者都可以获得免费更新,无论他们何时购买的书或他们支付了多少钱(包括免费)。
大多数Leanpub书籍都提供PDF(适用于计算机)、EPUB(适用于手机和平板电脑)和MOBI(适用于Kindle)格式。书籍包含的格式会显示在此页面的右上角。
最后,Leanpub的书籍没有任何DRM版权保护的限制,所以你可以轻松地在任何支持的设备上阅读它们。