本章介绍了什么是响应式编程,以及如何使用Rx在应用程序中实现响应式编程。
在响应式编程中,您使用时变变量来保存值,这些值通过对其依赖项发生的变化做出反应而更改。您在Shoppy示例中看到了这些变量的示例:位置、连接性、iconSize等等。
Rx是微软开发的一个库,用于在。net应用程序中实现响应式编程。
在Rx中,时变变量由实现IObservable接口的可观察序列抽象。
可观察对象是通知的生产者,观察者订阅它来接收这些通知。
每个观察者订阅都表示为IDisposable,允许在任何时候取消订阅。
观察者实现IObserver接口。
可观察对象可以发出带有有效负载的通知,在其完成时发出通知,并在出现错误时发出通知。
当一个可观察对象把它的完成或错误通知给观察者后,就不会再发出通知了。
可观察对象并不总是完整的;它们可能是无限通知的提供者。
可观察对象可以是“安静的”,这意味着它们从来没有也永远不会推送任何元素。
Rx提供了用于创建查询、转换、投影等管道的操作符,其语法与LINQ使用的相同。
大理石图用于可视化Rx管道。
响应式系统被定义为具有响应性、弹性、弹性和消息驱动的系统。响应式系统的这些特征在响应式宣言中有定义。
在响应式系统中,Rx被放置在消息驱动槽中,就像您希望处理应用程序接收到的消息的方式一样。
异步性是响应性最重要的部分之一,因为它允许您更好地使用资源,从而使应用程序响应更快。
“一切都是流”解释了为什么Rx可以很容易地处理任何源,即使它是一个数据源,如数据库。
在下一章中,您将有机会构建第一个Rx应用程序,并将其与用传统的事件处理方式编写相同的应用程序进行比较。
你会亲眼看到Rx有多棒。