Part 1: Getting Started with RxSwift
Let's review what you will be learning in this course, beginning with a brief history of RxSwift.
Learn what are the goals of RxSwift, compare the pros and cons of learning and using RxSwift, and become familiar with the foundation of RxSwift: the observable.
See how to install RxSwift in an Xcode project using CocoaPods, and how to add a playground to a project.
Go over several operators you can use to create observables from individual values and collections of values.
Learn how to subscribe to an observable, and how to manage memory by using dispose bags.
Continue learning how to subscribe to observables and see how to make an observable emit an error event to subscribers.
Get introduced to the do operator for performing side effects, and then use the do operator in an example from the previous video.
Find out how Subjects can receive new elements and emit new events to subscribers at runtime.
Continue learning about using Subjects and see how to use Variables for a similar purpose but with some added conveniences.
Put your new skills to work by creating a reactive algorithm to deal hands of blackjack.
Get an overview of your first iOS project, Combinestagram, and then apply what you've learned so far to Rx-ify it.
Continue incorporating use of RxSwift in Combinestagram and see how to create your own custom observable to save images to disk.
Review what you learned in this section, and find out how you'll apply that knowledge throughout the rest of the course.
Part 2: Filtering Observables
Learn why you'd use filtering operators, and see an example of how to chain filtering and other kinds of operators together to perform complex operations.
See how to use filtering operators to apply conditional constraints to next events and only pass through the elements you want to subscribers.
In this challenge, you'll use filtering operators to create a utility that looks up phone numbers in a sample data set.
Improve the Combinstagram app with filtering operators, and learn how to enable multiple subscribers to consume the elements from a single observable.
Continue improving the Combinestagram app by creating a custom filtering operator to handle the authorization status for access to the Photos library.
Find out how to manage threads in RxSwift and get an introduction to using timing operators to filter consecutive input.
In this challenge you'll use sharing, throttling, and schedulers to optimize and finish up Combinestagram.
Wrap up on what you learned in this section and see how you'll continue to build up your repertoire of RxSwift in the next section.
Part 3: Transforming Observables
Kickoff your introduction to learning about most one of most important categories of operators in RxSwift.
Review concepts and go through several examples of putting the most widely-used transforming operators in RxSwift to work.
Improve upon the phone number lookup utility from earlier but including the use of transforming operators.
Get introduced to RxCocoa and understand how it applies RxSwift concepts and patterns to provide APIs for working with Cocoa and Cocoa Touch.
Apply what you've learned about transforming operators to implement the necessary functionality of the GitFeed app.
Continue working on the GitFeed app from the previous video by implementing a way to retrieve saved data.
Modify GitFeed to make it more useful and interesting, by finding the top trending Swift repos instead and displaying their combined activity.
Review what you learned in this section and see what's in store for you next as you continue to level up your Rx game.
Part 4: Combining Observables
Get introduced to what you will be learning about in this part: joining observable sequences together.
In this video you'll learn how to use a wide variety of operators to prepend, join, and merge observables.
In this video you'll continue working with combining operators to merge, choose between, and accumulate observables.
Get additional hands-on experience working with two commonly used combining operators to improve upon an example from the previous video.
Apply everything you've learned in this course so far to implement the functionality for an app that resembles how you would use RxSwift in your own app projects.
Continue implementing the functionality for Our Planet, beginning with how to fetch data from the EONET public API.
In this video you'll see how to improve Our Planet to retrieve data more efficiently by fetching in parallel.
Finish implementing Our Planet by incrementally updating the UI with data coming back from parallel fetching.
Add some polish to Our Planet by appropriately showing and hiding the activity indicator for network activity.
Wrap up this course by reviewing what you learned, and get some handy resources to continue the learning on your path to Jedi mastery of RxSwift.