Reactive Programming with Swift 4: Build asynchronous reactive applications with easy-to-maintain and clean code using RxSwift and Xcode 9
Learn how to solve blocking user experience and build event based reactive applications with Swift.
- Build fast and scalable apps with RxSwift
- Apply reactive programming to solve complex problems and build efficient programs with reactive user interfaces
- Take expressiveness, scalability, and maintainability of your Swift code to the next level with this practical guide
RxSwift belongs to a large family of Rx implementations in different programming languages that share almost identical syntax and semantics. Reactive approach will help you to write clean, cohesive, resilient, scalable, and maintainable code with highly configurable behavior.
This book will introduce you to the world of reactive programming, primarily focusing on mobile platforms. It will tell how you can benefit from using RxSwift in your projects, existing or new. Further on, the book will demonstrate the unbelievable ease of configuring asynchronous behavior and other aspects of the app that are traditionally considered to be hard to implement and maintain. It will explain what Rx is made of, and how to switch to reactive way of thinking to get the most out of it. Also, test production code using RxTest and the red/ green approach. Finally, the book will dive into real-world recipes and show you how to build a real-world app by applying the reactive paradigm.
By the end of the book, you'll be able to build a reactive swift application by leveraging all the concepts this book takes you through.
What you will learn
- Understand the practical benefits of Rx on a mobile platform
- Explore the building blocks of Rx, and Rx data flows with marble diagrams
- Learn how to convert an existing code base into RxSwift code base
- Learn how to debug and test your Rx Code
- Work with Playgrounds to transform sequences by filtering them using map, flatmap and other operators
- Learn how to combine different operators to work with Events in a more controlled manner.
- Discover RxCocoa and convert your simple UI elements to Reactive components
- Build a complete RxSwift app using MVVM as design pattern
Who This Book Is For
This book is for the developers who are familiar with Swift and iOS application development and are looking out to reduce the complexity of their apps. Prior experience of reactive programming is not necessary.
Table of Contents
- A new upgrade is available : Swift 3 to Swift 4
- FRP fundamentals, terminology and basic building blocks
- Setup RxSwift and convert a basic Login app to its RxSwift counterpart
- When to become Reactive?
- Filter, Transform and Simplify
- Reduce by combining and filtering and common trade offs
- React to UI events: start subscribing
- RxTest and Custom Rx Extensions : Testing with Rx
- Testing your RxCode- testing Asynchronous code
- Schedule your tasks, don't Queue!
- Subscribe to errors and save your app
- Functional and Reactive App-architecture
- Put your knowledge to practice : Finish a real world application