Learning reactive programming with Java 8 : learn how to use RxJava and its reactive observables to build fast, concurrent, and powerful applications through detailed examples /
If you are a Java developer that knows how to write software and would like to learn how to apply your existing skills to reactive programming, this book is for you.
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham, UK :
Packt Publishing,
2015.
|
Colección: | Community experience distilled.
|
Temas: | |
Acceso en línea: | Texto completo Texto completo |
Tabla de Contenidos:
- Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: An Introduction to Reactive Programming; What is reactive programming?; Why should we be reactive?; Introducing RxJava; Downloading and setting up RxJava; Comparing the iterator pattern and the RxJava Observable; Implementing the reactive sum; Summary; Chapter 2: Using the Functional Constructions of Java 8; Lambdas in Java 8; Introducing the new syntax and semantics; Functional interfaces in Java 8 and RxJava; Implementing the reactive sum example with lambdas
- Pure functions and higher order functionsPure functions; Higher order functions; RxJava and functional programming; Summary; Chapter 3: Creating and Connecting Observables, Observers, and Subjects; The Observable.from method; The Observable.just method; Other Observable factory methods; The Observable.create method; Subscribing and unsubscribing; Hot and cold Observable instances; The ConnectableObservable class; The Subject instances; Summary; Chapter 4: Transforming, Filtering, and Accumulating Your Data; Observable transformations; Transformations with the various flatMap operators
- Grouping itemsAdditional useful transformation operators; Filtering data; Accumulating data; Summary; Chapter 5: Combinators, Conditionals, and Error Handling; Combining the Observable instances; The zip operator; The combineLatest operator; The merge operator; The concat operator; The conditional operators; The amb operator; The takeUntil(), takeWhile(), skipUntil(), and skipWhile() conditional operators; The defaultIfEmpty() operator; Handling errors; The return and resume operators; The retrying technique; An HTTP client example; Summary
- Chapter 6: Using Concurrency and Parallelism with SchedulersRxJava's schedulers; Debugging Observables and their schedulers; The interval Observable and its default scheduler; Types of schedulers; The Schedulers.immediate scheduler; The Schedulers.trampoline scheduler; The Schedulers.newThread scheduler; The Schedulers.computation scheduler; The Schedulers.io scheduler; The Schedulers.from(Executor) method; Combining Observables and schedulers; The Observable subscribeOn(Scheduler) method; The Observable observeOn(Scheduler) operator; Parallelism; Buffering, throttling, and debouncing
- ThrottlingDebouncing; The buffer and window operators; The backpressure operators; Summary; Chapter 7: Testing Your RxJava Application; Testing using simple subscription; The BlockingObservable class; The aggregate operators and the BlockingObservable class; Testing with the aggregate operators and the BlockingObservable class; Using the TestSubscriber class for in-depth testing; Testing asynchronous Observable instances with the help of the TestScheduler class; Summary; Chapter 8: Resource Management and Extending RxJava; Resource management; Introducing the Observable.using method