Book Image

Reactive Programming for .NET Developers

Book Image

Reactive Programming for .NET Developers

Overview of this book

Reactive programming is an innovative programming paradigm focused on time-based problem solving. It makes your programs better-performing, easier to scale, and more reliable. Want to create fast-running applications to handle complex logics and huge datasets for financial and big-data challenges? Then you have picked up the right book! Starting with the principles of reactive programming and unveiling the power of the pull-programming world, this book is your one-stop solution to get a deep practical understanding of reactive programming techniques. You will gradually learn all about reactive extensions, programming, testing, and debugging observable sequence, and integrating events from CLR data-at-rest or events. Finally, you will dive into advanced techniques such as manipulating time in data-flow, customizing operators and providers, and exploring functional reactive programming. By the end of the book, you'll know how to apply reactive programming to solve complex problems and build efficient programs with reactive user interfaces.
Table of Contents (15 chapters)
Reactive Programming for .NET Developers
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface

Exception handling


Handling exceptions in reactive programming with Rx is something odd. We're used to handling exceptions by writing code that executes when some other code hangs. More precisely, we write multiple execution flows that execute when the application runs properly or badly. The real meaning of exception handling means handling an exception in the usual way of doing something. Exception handling is not error handling.

Although, this being a philosophical definition, we're used to using exception handling to handle unpredictable behaviors.

In Rx, exception handling is identical with the difference that here we don't deal with code rows that execute one by one; we actually deal with the sequences of messages that must continue flowing regardless of whether an exception may invalidate one or multiple messages. In smarter words, the show must go on. Obviously, a single exception must prevent the whole sequence from running anymore.

In other (simpler) words, when we want to handle an...