第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

RxSwift 01 - ReactiveCocoa 與 RxSwift

標(biāo)簽:
iOS React.JS 架構(gòu)

简介

如今,函数响应式编程成为越来越受开发者喜欢的编程方法。原因很简单,它能使复杂的异步代码容易地编写和理解,以及 MVVM 设计模式的兴起。目前的两个 iOS 最流行的函数响应式编程库分别是 ReactiveCocoa 与 RxSwift。

ReactiveCocoa

ReactiveCocoa 是一个比较老的开源项目,从 Objective-C 时期开始,后来从 3.0 开始支持了 Swift (可以通过 bridge 在 Objective-C 下使用),接着就完全停止了在 Objective-C 上的维护,到了 5.0 更是将 RAC 拆分为四个库:ReactiveCocoa、ReactiveSwift、ReactiveObjC、ReactiveObjCBridge,用于区分 Objective-C 和 Swift 开发。之前我总结过一篇 ReactiveCocoa 入门 的文章,里面简单介绍了下 ReactiveCocoa 的组织框架,这里就不详细介绍了。

推荐阅读汇总:干货集结地

RxSwift

RxSwift 项目的时间短一些,但是 ReactiveX 社区充满了活力。关于 RxSwift 有一件重要的事是项目是按照 ReactiveX 这个组织的规定下开发的,并且所有其他语言的 Rx 项目也是一样。如果学会了如何使用 RxSwift,再去学习 Rx.Net , RxJava 或者 RxJS 等就是小菜一碟,只是语言语法上的差异。【PS:这个思想一致通用是我十分喜欢的一点,哈哈哈】

强烈推荐 RxSwift 学习文章(我就是看了下面的文章入门的):

ReacticeCocoa Vs RxSwift

1. 冷信号和热信号

冷信号:(例如网络请求)

  • 是被动的,只有当你订阅的时候,它才会发布消息
  • 只能一对一,当有不同的订阅者,消息是重新完整发送。

热信号:(例如 UI 交互)

  • 是主动的,尽管你并没有订阅事件,但是它会时刻推送,
  • 可以有多个订阅者,是一对多,集合可以与订阅者共享信息。

ReactiveCocoa 对冷信号和热信号的区别是很看重的,而 RxSwift 则不需要考虑是冷信号还是热信号。

关于冷热信号的更加细节的介绍,可以看以下文章:

2. 社区支持

相对于 RxSwift 背后的 ReactiveX 大社区的活跃支持,ReactiveCocoa 的社区支持明显是不足的,更多的是网上多年累月积累的在线教程,在社区支持方面 RxSwift 是有很大优势的。

3. 总结

实际上2个框架还有很多细节差异,但不管是 RxSwift 还是 ReactiveCocoa 框架,都是功能极其强大的框架,而且很多东西是相通的,在两者之间来回切换只是几个小时的问题。如果你之前学习过 Swift ,我个人推荐是从 RxSwift 入手,如果是只学习过 Objective-C 的话,还是从 ReactiveCocoa 入手好点。【PS: 我个人是偏爱 RxSwift 一点的,O(∩_∩)O哈哈~】

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 1
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報(bào)

0/150
提交
取消