【必看系列】iOS程式設計思想集大成者
阿新 • • 發佈:2019-01-08
RAC是ReactiveCocoa家族一員。這是一個響應式家族,在我看來RAC完全配得上:“程式設計思想之集大成者” 這個稱號!在內部封裝的函式式、面向物件、響應式、封裝很多關於iOS原生,最大限度便利的開發者使用!
很多部落格都說RAC好用,但發現很少有如何學習RAC的文章。不知道該從哪入手,在這裡小編也整理了一份關於RAC的路線圖,希望對讀者有所幫助。不好勿噴!
推薦一個iOS高階開發群:624212887,本文也是在此群交流時受到啟發,想提升的iOS開發推薦入駐
一:RAC初級用法:RAC在實際開發中的作用
- 代替KVO
- 代理
- 通知
- 手勢
- UI互動攔截
- RAC元組
——RAC陣列遍歷
——RAC字典遍歷
——RACTuple的使用 - 定時器的操作:與傳統定時器的區別以及執行緒情況
二:RAC基本形式
- 訊號的產生:creat的RACDunamicSignal的流程處理
- 訂閱:subscriber訂閱者的事件處理,以及回撥
- 傳送訊號
——sendNext:傳送一般訊號的毀回撥處理
——sendError:針對錯誤訊號的銷燬處理
——sendComplete:完成訊號的與sendError錯誤的異同點,以及對訊號的處理 - 銷燬訊號
——RACCompundDisposable銷燬集中營的銷燬歷程
三:RAC進階用法
- 訊號攔截–bind原理
- 對映:map與flattenMap
- 過濾:filter、ignore、 distinctUntilChanged
- 合併:combineLatest、reduce、merge、zipWith
- 取捨:take、takeLast、takeUnti,skip
- 訊號操作時間:timeout、interval、dely
- 獲取訊號中的訊號: switchToLatest
- 訊號節流: throttle
- 訊號操作多執行緒:deliverON、subscribeOn
- 底層的封裝和實現
四:RAC核心底層原理
- RACSignal
——分析signal的流向和儲存,傳送,以及銷燬過程-----利用圖解分析
——RACSubjct:便捷式訊號工作流程
——RACComman:命令訊號的工作流程
* 建立命令訊號
* 命令訊號執行情況判斷
* 命令訊號狀態
* 執行命令
——其他訊號
* 空訊號:RACEmptySignal
* 通道訊號:RACChannelTerminal流程分析
* 返回訊號:RACReturnSignal的應用場景
* 錯誤訊號:RACErrorSignal
- RACDisposable
- RACSubscriber
- RACStream:流式走向
- RACScheduler排程者
五:RAC記憶體管理
- 迴圈引用分析
- RAC下迴圈引用的分析
- 迴圈引用的釋放
- RAC在記憶體管理中優化
六:RAC巨集定義
- RAC強大提示,預編譯
- RACObserver
- strongify,weakify
- RACTuplePack,RACTupleUnpack
七:其他須知
- 二叉樹
- 遞迴鎖
- 互斥鎖
- 執行緒
- lock
- ublock
結語
以上就是這篇文章的全部內容了,希望本文的內容對大傢俱有一定的參考學習價值,同時推薦大家進入iOS交流群:624212887,一起交流學習,謝謝大家的支援