Description
In this course, you will learn :
- How to delegate both calls and control flow to RxJS, freeing up your time to work on the rest of your application.
- RxJS compartmentalises eventing flows by encapsulating each action in a single function and providing a plethora of helper operators that maintain an internal state, allowing you to delegate your state concerns to the library.
- You will be able to build larger, faster, and less buggy applications for your users by the end of this course.
Syllabus :
1. Creating Observables
- Learning Observables
- Introducing Rx Concepts
- Building a Stopwatch
- Running a Timer
- Importing Timer From RxJS
- Piping Data Through Operators
- Manipulating Data in Flight with map
- Handling User Input
- Assembling the Stopwatch
- Drag and Drop
- Interesting Applications in Next Chapters
- Using a Subscription
- Experimenting with Observables
- What we Learned
2. Manipulating Streams
- Translating Pig Latin with Flatten and Reduce
- Flattening
- Reducing
- Debugging an Observable Stream
- Typeahead
- What We Learned
4. Managing Asynchronous Events
- Dragon of Asynchronicity
- Making AJAX Requests
- Handling Errors
- Promise vs. Observables with AJAX
- Loading with Progress Bar
- The Two Merges
- When Good AJAX Goes Bad
- Progressive and Ordered Loading
- What We Learned
5. Advanced Async
- Advanced Asynchronous Events
- The Spec
- Preventing Race Conditions with switchMap
- Debouncing Events
- Throttling Events
- Adding Debounce to the Typeahead
- Skipping Irrelevant Requests
- Adding Error Handling in Typeahead
- Typeahead Application Using Debounced Function
- Building a Stock Ticker
- Live Filtering the Stream
- Stock Ticker Application
- What We've learned
6. Multiplexing Observables
- The Problem with Cold Observables
- Subscriptions
- Multicasting with the Subject Class
- Building a Chat Room
- Rendering and Switching Rooms
- Sending Messages in the Chatroom
- Displaying Unread Notifications
- What we Learned
7. Using HTTP in Angular
- Generating a New Project
- Generating Components and Building a Search Box
- AJAX Requests and Importing Modules in Angular Applications
- Angular Services
- Displaying Returned Data
- BehaviourSubject and Async Pipe in Angular
- Saving New Data
- Routing to Components
- Linking Between Components
- Editing a Single Photo
- Adding in Analytics
- Intercepting HTTP Calls
- What We learned
8. Building Reactive Forms in Angular
- Reactive Forms
- Phone Number Input Box
- Building a Phone Number Input the Right Way
- Creating a Phone Input with Angular
- Validating an Input
- Building a Pizzeria Registration Form
- Using Advanced Validation
- Validating Address and Credit Card
- Connecting the Model to the View
- Setting Up the Registration Form Inputs
- Updating Form Groups
- Submitting the Form
- Handling Multiple Addresses
- Creating a Pizza Ordering Form
- Creating the Pizza View
- Fetching Component Data in the Route using Reactive Selectors
- Reacting to Change
- Adding Specialty Pizzas using patchValue
- What we learned
9. Advanced Angular
- Building Performant Applications
- Understanding Angular Performance
- Zones and Change Detection
- Profiling Change Detection
- Optimizing Change Detection
- Managing State with NgRx
- Actions
- Reducers
- Plugging It All Together
- Listening in to Changes to the State
- Sending Data to Store
- What We Learned
10. Reactive Game Development
- Game Development
- Creating Your Own Operator
- Animating Objects
- Calling next with Schedulers
- Requesting Repaints with requestAnimationFrame
- Creating Easing Operators
- Architecting a Game
- The RxJS Backbone
- Managing Game State
- Tracking User Input
- Building a Complex Operator
- Creating Enemies
- Detecting Collisions
- What we Learned