Hello functional REACTIVE programming with Reactive extensions
Hello FRP
With Rx
Hello RP
Outline
- About Me
- What is RP
- Influences & Inspirations
- Design Patterns
- Functional Programming
- Core Concepts
- QA
- Refs
Terrance Smith
- Dad of a 8 year old
- Senior Software Developer @Stratus Ops Team
- 9 years exp as a Software Developer
- 4 year exp System\Network Admin in US Army
2
What is Reactive Programming?
Reactive Programming
Representing and responding to Changes in Data Over Time
Observables
AKA
Streams
When you typically think of data...
you may think of one of these
when you think of data "in RP"
it's more like this
TIME X Data
=
Observable
key to streams is ...
Some Examples of Observables\ Streams
Subscribers
How we Listen to observables
Push vs Pull
Iteration vs Subscription
Functional Reactive Programming
-
RFP is a MODEL of implementing RP
- The "HOW" of Reactive Programming
- Leverages FP to compose responses to change in streams
Event subscription example
Benefits of Rp
- Unified Concurrency\Threading\Asynchronicity Model
- Abstracting Event\Database\HTTP\MSG\ETC Handling
- Baked in Error Handing
- (Arguably) Simpler code
Benefits of Functional Rp
- Uses existing functional programming concepts to compose responses to change in streams
- (Arguably) Even simpler code
imho
my personal anecdotal accounts and opinions
to be taken with a grain of salt
Q&A
Refs
- The Introduction to Reactive Programming you've been missing.
- Why you should be doing Functional Reactive Programming (From an Android Dev's Perspective)
- What is Functional Reactive Programming (SO)
- Top Reactive Programming Stack Overflow Questions
- Composing Reactive Animations (fran)
- CommitStrip on First FP App
More Refs
Hello Reactive Programming
By Terrance Smith
Hello Reactive Programming
High-level introduction to Reactive Programming
- 1,530