O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Hands-On RxJS for Web Development

Video Description

TagLine

About This Video

  • Perform complex web development operations to scale your applications easily with RxJS
  • Prevent typical imperative async programming issues such as race conditions, complicated data composing and error handling, request canceling, retry on error, and others
  • Use observable-based store-management solutions in modern framework apps to achieve scalability and reusability

In Detail

Web application code can get tangled up, which makes it hard to test and maintain. Also, asynchronous computations and HTTP requests have to be properly managed. However, with RxJS 6 you can unify, filter, and transform these streams with ease. By introducing RxJS 6 into your code, you can build clean and fault-tolerant web applications.

This course shows you how to handle work tasks and issues with RxJS 6. It helps you develop the skills you need to create Reactive applications with RxJS 6. With this course, you'll enter the Reactive world by using Angular and vanilla JS. You will learn to execute asynchronous event handling techniques using RxJS 6.

By the end of the course, you'll be saving precious development time by using RxJS 6. You'll scale your own applications effectively, and use Angular framework that relies on RxJS 6.

All the code and supporting files for this course are available at https://github.com/PacktPublishing/Hands-on-RxJS-for-Web-development

Table of Contents

  1. Chapter 1 : Dive into the RxJS Environment
    1. The Course Overview 00:08:55
    2. Explore RxJS – What and Why? 00:04:47
    3. Node.js Installation 00:02:41
    4. Angular Demo Project Starter 00:02:01
    5. Forking RxJS Playground on JSFiddle 00:01:48
  2. Chapter 2 : Implementing Observables to Reduce Code Complexities
    1. What Are Observables and How to Create Them? 00:15:52
    2. Hands-On Cold and Hot Observables 00:06:47
    3. Subjects – Emit Your Own Data to Multiple Subscribers 00:05:00
    4. Observables in Application State Management (ngRxStore) 00:04:23
    5. Benefits of Reactive Updating Components View on Data Change 00:08:47
  3. Chapter 3 : Working with Operators for Stream Data Processing
    1. Working with Pipe-able Operators to Decrease App Bundle Size? 00:04:00
    2. Modifying Data with ‘map’ 00:04:15
    3. Filtering Data with ‘filter’ 00:02:01
    4. Handle Errors As Usual Data – with ‘catchError’ 00:04:51
    5. Preventing Unneeded Recalculations with ‘distinctUntilChanged’ 00:07:01
    6. Operate All Emitted Values with ‘scan’ 00:03:01
    7. Data Manipulation with ‘buffer’ 00:11:31
  4. Chapter 4 : Combining Streams with Operators
    1. Using Flattening Operators 00:06:00
    2. Switch to the Latest Observable Data with switchMap to Prevent Race-Conditions 00:12:15
    3. Interleave Application Events with mergeMap and mergeAll 00:21:10
    4. Fetching Delayed API-Call Results with mergeMap and Subjects 00:08:03
    5. Practicing Processing Data Chunks with mergeAll and bufferCount 00:05:16
    6. Practicing CRUD Operations with concatMap 00:11:05
    7. Using zip and combineLatest for Component State-Switching 00:22:02
    8. Fixing Backend Drawbacks with forkJoin: Rx Analog of Promise.all 00:06:46
  5. Chapter 5 : Practicing the Retry Logic
    1. Redo Errored Http Requests with ‘retry’ Operator with One Line of Code! 00:06:03
    2. Make Repetitive Http Calls with the ‘repeat’Operator 00:09:10
    3. Take Advantage of retryWhen and repeatWhen Operators for Complicated Repeat Logic 00:17:39
  6. Chapter 6 : Practicing the Unsubscribe Policy
    1. Why Unsubscribe? Prevent Memory Leaks with the Correct Unsubscribe Policy 00:09:12
    2. Practicing first, skip, take, takeUntil, and takeWhile Operators 00:08:41
  7. Chapter 7 : Fixing Anti-Patterns and Practicing Unit Tests
    1. Fixing RxJS Anti-Patterns to Improve Code Maintainability 00:05:08
    2. Control the Timing Strategy of Event Emissions with Schedulers 00:20:16
    3. Unit Tests for Observable Streams: Rx.BehaviorSubject and Rx.Marbles Techniques 00:26:41
    4. Using Multicast Operators to Prevent Requesting Same Data Again for Each Observer 00:11:16
    5. Debugging Tips 00:13:13