RxSwift笔记 - 简单介绍

57 篇文章 1 订阅
23 篇文章 0 订阅

RxSwift

RxSwiftReactiveX 家族的重要一员, ReactiveXReactive Extensions 的缩写,一般简写为Rx

ReactiveX 官方给Rx的定义是,Rx是一个使用可观察数据流进行异步编程的编程接口。

ReactiveX结合了观察者模式、迭代器模式和函数式编程的精华。

ReactiveX 不仅仅是一个编程接口,它是一种编程思想的突破,它影响了许多其它的程序库和框架以及编程语言。它拓展了观察者模式,使你能够自由组合多个异步事件,而不需要去关心线程,同步,线程安全,并发数据以及I/O阻塞


Rx家族:

ReactiveX for platforms and frameworks


Rx 模式

使用观察者模式

  • 创建:Rx可以方便的创建事件流和数据流
  • 组合:Rx使用查询式的操作符组合和变换数据流
  • 监听:Rx可以订阅任何可观察的数据流并执行操作

简化代码

  • 函数式风格:对可观察数据流使用无副作用的输入输出函数,避免了程序里错综复杂的状态
  • 简化代码:Rx的操作符通通常可以将复杂的难题简化为很少的几行代码
  • 异步错误处理:传统的try/catch没办法处理异步计算,Rx提供了合适的错误处理机制
  • 轻松使用并发:RxObservablesSchedulers让开发者可以摆脱底层的线程同步和各种并发问题

RxSwift

RxSwiftRxSwift 语言开发的一门函数响应式编程语言, 它可以代替iOS系统的 Target Action / 代理 / 闭包 / 通知 / KVO …..
同时还提供网络、数据绑定、UI事件处理、UI的展示和更新、多线程……
这里写图片描述

其中 RxCocoa 是对 iOS 系统 Cocoa 元素加的 Extension, 使系统自带控件支持 Rx 属性。

例如:UISwitch with Rx
这里写图片描述

RxSwift 优点

RxSwiftReactiveX 的一员, 自然包含 Rx 的属性及优点

  • 简洁 - Rx 简化了代码,使用较少的代码即可实现相同的功能
  • 清晰 - 声明都是不可变更的, 而且代码高内聚, 代码易读,易维护
  • 易用 - 它抽象的了异步编程,使我们统一了代码风格
  • 稳定 - Rx 是完全通过单元测试的

安装

Github 官方文档:RxSwift Installing guide


RxSwift 官方社区

RxSwift 官方社区

RxSwift社区非常友好、开放, 热衷于讨论模式和常见的技术, 旨在帮助大家互相学习成长。

社区提供了很多的用 RxSwift 实现的项目和 Swift 的延展,以及 RxSwift 库。

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值