Reactive programming
Reactive programming is a programming paradigm in which computations and outputs respond to asynchronous events or changing data by propagating changes through dependent operations.
Functional Programming in JavaScript
A programming paradigm centered on data flows and propagation of change, especially for responding to asynchronous or event-driven updates.
- How it is used
- Unifies asynchronous and event-based data providers into observable streams that can be transformed and subscribed to.
- How deep it goes
- Explains observable streams and pipelines with map, filter, subscription, errors, completion, and asynchronous flattening without detailing implementation internals.
- Examples
- Uses number ranges, generated squares, SSN input validation, and filtering U.S. students returned from a JSON request.
- What you can do after
- Apply it via RxJS to transform event, promise, collection, and service-call values through observable pipelines.
Read how Functional Programming in JavaScript explains reactive programming →
Quarkus in Action
Reactive programming is a programming paradigm centered on asynchronous data streams and the propagation of changes over time.
- How it is used
- Uses asynchronous, nonblocking execution to keep I/O-heavy Quarkus applications responsive under load.
- How deep it goes
- Explains continuations and event-loop request handling, then connects them to reactive database access and pipeline types.
- Examples
- Contrasts blocking and nonblocking I/O handling and uses Hibernate Reactive database access to illustrate asynchronous results.
- What you can do after
- Apply it via Quarkus and SmallRye Mutiny to build nonblocking pipelines while keeping blocking work off event-loop threads.
Spring in Action, Sixth Edition
Reactive programming is a programming approach based on asynchronous processing of data streams and the propagation of change over time.
- How it is used
- Frames data processing as a pipeline and provides context for Project Reactor and Spring WebFlux.
- How deep it goes
- Explains the imperative contrast and introduces pipelines, Mono, Flux, and basic operations without detailing execution internals.
- Examples
- Uses newspaper delivery and two Java greeting implementations to contrast batch-like steps with a Reactor pipeline.
- What you can do after
- Apply it via Project Reactor to express a simple transformation as a Mono pipeline.
Read how Spring in Action, Sixth Edition explains reactive programming →
Modern Angular
Reactive programming is a programming technique that expresses computation in terms of asynchronous data streams and the propagation of changes.
- How it is used
- Frames Angular frontend behavior as state changes propagated from asynchronous events into rendered UI.
- How deep it goes
- Defines state, UI, events, and pull-versus-event-driven behavior, then points toward RxJS without detailing operator internals.
- Examples
- Uses a counter component, a synchronous data pull, and a click-event listener to contrast state-driven and event-driven behavior.
- What you can do after
- Apply reactive programming in Angular with RxJS, including observable cleanup and dependency-aware custom operators.
Spring Security in Action, Second Edition
Reactive programming is a programming paradigm based on asynchronous processing of streams of data and events, typically to support nonblocking and concurrent execution.
- How it is used
- Supports Spring Security application development when asynchronous, fragmented processing changes how authentication and authorization operate.
- How deep it goes
- Defines incremental processing and demonstrates a Mono endpoint, while deferring detailed reactive application study.
- Examples
- Uses incremental file uploads, a milk-factory analogy, a Mono-based HelloController, and publisher-subscriber streams.
- What you can do after
- Build a simple Spring WebFlux endpoint and recognize when reactive processing may improve delivery of fragmented results.
Read how Spring Security in Action, Second Edition explains reactive programming →
Functional Design and Architecture: Examples in Haskell
Reactive programming is a programming technique for expressing computations that respond to continuously arriving events or changing data.
- How it is used
- Organizes formulas and stateful applications around continuously arriving data and changing environmental conditions.
- How deep it goes
- Defines the motivating principle and surveys actors, streams, event models, protocols, MVars, STM, and message queues without detailed implementation.
- Examples
- Uses spacecraft motion, fuel, and interconnected-system formulas as the central domain example.
- What you can do after
- Evaluate reactive designs by comparing actors, streams, event models, MVars, STM, and message queues.
Read how Functional Design and Architecture: Examples in Haskell explains reactive programming →
Related concepts
- imperative programmingalternative to · Imperative programming is a programming paradigm that expresses computation as an ordered sequence of instructions specifying operations, control flow, or changes to state.
- imperative approachcontrasts with · An imperative approach processes a bulk of available data as a whole rather than incrementally as data arrives.
- Project Reactorused by · Project Reactor is a JVM reactive programming library providing asynchronous, nonblocking types and operators for composing data sequences with backpressure.
- Quarkus platformused by · Quarkus is a Java framework for building cloud-native applications, optimized for containerized environments, fast startup, and low memory use.
- signalhas part · A signal is an observable value, event, or pattern that conveys information about a condition, state, or phenomenon.
- push modeluses · A push model is a communication pattern in which a producer or system proactively sends data, work, or updates to recipients rather than waiting for each to request them.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.





