Video description
Libraries of reactive extensions exist in many programming languages. RxJS is a popular library of reactive extensions for JavaScript. In this course, you'll explore RxJS and how it's used to transform and compose streams of data. RxJS promotes the push model, where the algorithms of your application handles data by applying a number of composable functions. The push model allows you to eliminate polling for data that may not even be available. Splitting the business logic into separate functions makes the code easier to read and modify. RxJS is not a framework and can be used in any JavaScript app. To best follow this course, learners must be familiar with JavaScript syntax and callback functions, and should have current versions of Node.js and Visual Studio Code loaded on their computers.
- Understand how to bring reactive programming to your JavaScript apps
- Create a pathway forward from imperative to functional programming
- Pick up the ability to create observable data streams
- Explore the roles of observers and subscribers
- Discover how to apply and compose operators to process the data emitted by observables
- Master the ability to handle errors
- Understand how to compose multiple data streams
Yakov Fain is a Java Champion and cofounder of the IT consultancy, Farata Systems. An in-demand speaker at international conferences, Yakov has written 1,000 blogs (http://yakovfain.com) and authored or coauthored multiple books about software development, including Angular 2 Development with TypeScript (Manning Publications) and Enterprise Web Development (O'Reilly Media).
Table of Contents
Intro to Reactive Programming with RxJS
Synchronous Versus Asynchronous Programming
How to Run Code Samples from This Course
Pull Versus Push (Callbacks, Promises, Subscriptions)
What Is RxJS?
Bringing RxJS to Your Project
Main RxJS Players
Getting Familiar with RxJS Observable, Observer, and Subscriber
Roles of Observable, Observer, and Subscriber
Creating an Observable
Using Observable.from()
Using Observable.create()
Intro to RxJS Operators
What Is an RxJS Operator?
Reading Marble Diagrams
Using the RxJS Operators map, filter, and reduce
Error Handling in RxJS
RxJS Error Handling Operators
Hot and Cold Observables
Introducing Hot and Cold Observables
The RxJS Operator Share
Multicasting with RxJS Subject
The Use Case for RxJS BehaviorSubject
Combining RxJS Observables
Combining Observables with the RxJS Operator concat
Combining Observables with the RxJS Operator merge
Combining Observables with the RxJS Operator flatMap
Combining Observables with the RxJS Operator switchMap
Comparing flatMap and switchMap
Combining Observables with the RxJS Operator zip