Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
98 lines (93 sloc) 1.61 KB

##Event Driven Architecture with Alt text

Vidas Vasiliauskas

< wikipedia > ####Message-driven architecture is a software architecture pattern for production, detection, consumption and reaction to events </ wikipedia >

Over-reactive?

Techradar 2016

Alt text

Alt text

interface IObservable<out T>
{
    Subscribe(IObserver<T>)
}

interface IObserver<in T>
{
	OnNext(T)
	OnError(Exception)
	OnCompleted()
}

Rx.net

https://github.com/Reactive-Extensions/Rx.NET

using System.Reactive;

Note: Guess namespace

Subject<T>
RepeatSubject<T>
BehaviorSubject<T>
AsyncSubject<T>
// ISubject<T> : ISubject<T,T>, IObservable<T>, IObserver<T> 

Alt text

...to sequence Alt text

####Rx vs Linq

136 : 55

(No overloads)

Amb(IObservable)
AsyncLast()
Buffer(int i) // overload with timespan for time buffer
CombineLatest(IObservable, combineFunc)
Merge(IObservable)
Switch()

Alt text

Testing hard or hardly testing?

class TestScheduler // Implements IScheduler

  • UI events
  • Domain events
  • Streaming services
  • Live queries
  • Parallel computing
  • Mapping and reducing sequences
  • Abstracting message queues like RabbitMQ, MS MQ, etc.


Ačiū :)