Reactive Extensions 响应式扩展 用于事件驱动编程的库,具有可组合的声明性模型

学海无涯 / 2023-06-18 / 原文

响应式扩展

这个存储库包含四个库,它们在概念上是相关的,因为它们都与 LINQ over of things 序列有关:

  • Reactive Extensions for .NET又名 Rx.NET 或 Rx ( System.Reactive ):一个用于事件驱动编程的库,具有可组合的声明性模型
  • AsyncRx.NET(实验性预览)(System.Reactive.Async):Rx 的实验性实现,用于IAsyncObservable<T>提供更深入的async/await支持
  • .NET 的交互式扩展,又名 Ix ( System.Interactive ):IAsyncEnumerable和的扩展 LINQ 运算符IEnumerable
  • LINQ forIAsyncEnumerable ( System.Linq.Async ):实现标准 LINQ 运算符IAsyncEnumerable

Rx 的两个关键特性是:

  • 一种明确定义的方式来表示和处理实时数据序列 ( IObservable<T>)
  • 一组运算符(例如Where刚刚显示的运算符),使事件处理逻辑能够以声明方式表达

Rx 在用户界面中的应用尤为成功。(在 .NET 之外也是如此——RxJS是 Rx 的 JavaScript 衍生产品,它在用户界面代码中非常流行。)