An introduction to the RxCpp library
We will be using the RxCpp library to write our reactive programs for rest of the book. The RxCpp library is a header-only C++ library that can be downloaded from a GitHub repo: http://reactive-extensions.github.io/RxCpp/. The RxCpp library relies on Modern C++ constructs, such as language-level concurrency, lambda functions/expressions, functional composition/transformation, and operator-overloading, to implement reactive programming constructs. The RxCpp library is structured along the lines of libraries such as Rx.net
and Rxjava
. Like any other reactive programming framework, there are some key constructs that everyone should understand before they write the first line of code. They are:
- Observables (Observable Streams)
- Observers (who subscribe to the Observables)
- Operators (for example, filters, transformations, and reductions)
- Schedulers
RxCpp is a header-only library and most of the computation is based on the notion of Observables. The library provides...