Reactive programming is when applications react to an asynchronous data stream as it occurs. The following diagram illustrates this flow:
Reactive programming flow
Reactive programming is not a fancy software engineering term that's only used by academics. It is, in fact, a programming model that can result in much greater efficiencies as opposed to the more common method of having applications iterate over data that is in memory.
There is more to reactive programming. First, let's consider that the data stream is provided by a publisher in an asynchronous manner to the subscriber.
A data streams is a binary input/output of strings and primitive data types. The DataInput interface is used for an input stream and the DataOutput interface is used for output streams.
Processors, or a chain of processors, can be used to transform the data stream without...