Learn reactive programming in Swift with RxSwift!
The popularity of reactive programming continues to grow on an ever-increasing number of platforms and languages. Rx lets developers easily and quickly build apps with code that can be understood by other Rx developers — even over different platforms.
Not only will you learn how to use the RxSwift port to create complex reactive applications on iOS, you’ll also see how to easily solve common application design issues by using RxSwift. Finally, you’ll discover how to exercise full control over the library and leverage the full power of reactive programming in your apps.
Who This Book Is For
This book is for iOS developers who already feel comfortable with iOS and Swift, and want to dive deep into development with RxSwift.
Topics Covered in RxSwift
- Getting Started: Get an introduction to the reactive programming paradigm, learn the terminology involved and see how to begin using RxSwift in your projects.
- Event Management: Learn how to handle asynchronous event sequences via two key concepts in Rx — Observables and Observers.
- Being Selective: See how to work with various events using concepts such as filtering, transforming, combining, and time operators.
- UI Development: RxSwift makes it easy to work with the UI of your apps using RxCocoa, which provides an integration of both UIKit and Cocoa.
- Intermediate Topics: Level up your RxSwift knowledge with chapters on reactive networking, multi-threading, and error handling.
- Advanced Topics: Round out your RxSwift education by learning about MVVM app architecture, scene-based navigation, and exposing data via services.
- And much, much more!
By the end of this book, you’ll have hands-on experience solving common issues in a reactive paradigm — and you’ll be well on your way to coming up with your own Rx patterns and solutions!
Table of Contents
Section I: Getting Started with RxSwift
Chapter 1: Hello RxSwift!
Chapter 2: Observables
Chapter 3: Subjects
Chapter 4: Observables and Subjects in Practice
Section II: Operators and Best Practices
Chapter 5: Filtering Operators
Chapter 6: Filtering Operators in Practice
Chapter 7: Transforming Operators
Chapter 8: Transforming Operators in Practice
Chapter 9: Combining Operators
Chapter 10: Combining Operators in Practice
Chapter 11: Time Based Operators
Section III: iOS Apps with RxCocoa
Chapter 12: Beginning RxCocoa
Chapter 13: Intermediate RxCocoa
Section IV: Intermediate RxSwift/RxCocoa
Chapter 14: Error Handling in Practice
Chapter 15: Intro To Schedulers
Chapter 16: Testing with RxTest
Chapter 17: Creating Custom Reactive Extensions
Section V: RxSwift Community Cookbook
Chapter 18: Table and Collection Views
Chapter 19: Action
Chapter 20: RxGesture
Chapter 21: RxRealm
Chapter 22: RxAlamofire
Section VI: Putting it All Together
Chapter 23: MVVM with RxSwift
Chapter 24: Building a Complete RxSwift App