“堆”排序 叠罗汉大家都知道吧,就是把人堆在一起,而这里我们要介绍的“堆”结构相当于把数字堆成一个塔型的结构。如图: 堆 是具有下列性质的完全二叉树:每个节点的值都大于或等于...
在前面的篇章中,多次遇见Scheduler,这是一个调度者,但是都没详细说,因为想在这篇章中详细说说。 Scheduler其实就是封装了一套GCD,在一些函数源码里已经使用了...
先上一段代码 这是笔记(1)核心逻辑中的示例代码,还记得整个流程是Producer.subscribe->AnonymousObservable.run->Anonymous...
框架里面定义了一些辅助类型,它们既是可监听序列也是观察者。如果你能合适的应用这些辅助类型,它们就可以帮助你更准确的描述事物的特征AsyncSubject[https://be...
观察者是用来监听事件,然后它需要这个事件做出响应。例如:弹出提示框就是观察者,它对点击按钮这个事件做出响应。创建观察者最直接的方法就是在 Observable 的 subsc...
四、Driver Driver(司机?)是一个精心准备的特征序列。它主要是为了简化 UI 层的代码。不过如果你遇到的序列具有以下特征,你也可以使用它:不会产生error事件一...
1. AFNetworking iOS面试题:AFNetworking 底层原理分析[https://juejin.im/post/5e7c51d06fb9a0097e30e...
特征序列 我们都知道Swift是一个强类型语言,而强类型语言相对于弱类型语言的一个优点是更加严谨。我们可以通过类型来判断出,实例有哪些特征。同样的在RxSwift里面Obse...
示例: 1.先看创建序列: 2.进到码源看其内部实现,返回一个AnonymousObservable(内部匿名序列),该类继承于Producer->Observable,Ob...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...
最近在微博上看到一个很好的开源项目VVeboTableViewDemo,是关于如何优化UITableView的。加上正好最近也在优化项目中的类似朋友圈功能这块,思考了很多关于...
前言 刚开始学习iOS开发的时候就有前辈说,国内的iOS程序员在国外被戏称为UITableView开发者。不管是为了适配4S以下机型的屏幕比例,还是Cell重用机制对内存负荷...
本文分为2个部分:概念与应用。概念部分旨在剖析 KVO 这一设计模式的实现原理;应用部分通过创建的项目,以说明 KVO 技术在 iOS 开发中所带来的作用;如果是作为刚接触 ...