.NET

Reactief programmeren

Reactive Extensions (Rx), IObservable, operators, schedulers, backpressure (optioneel, minder gebruikelijk in moderne web API's)

24 gespreksvragen·
Senior
1

Wat is de IObservable<T>-interface in Reactive Extensions (Rx.NET)?

Antwoord

IObservable<T> is de fundamentele interface in Rx.NET die een push-gebaseerde gegevensbron vertegenwoordigt. Het biedt een Subscribe-methode waarmee observers zich kunnen abonneren om asynchrone notificaties te ontvangen. Het is de reactieve tegenhanger van IEnumerable<T>: waar IEnumerable gegevens synchroon ophaalt (pull), pusht IObservable gegevens asynchroon naar de abonnees.

2

Wat zijn de drie methoden van de IObserver<T>-interface in Rx.NET?

Antwoord

IObserver<T> definieert drie methoden: OnNext(T value) om elk element van de sequentie te ontvangen, OnError(Exception error) om fouten af te handelen en het einde van de sequentie bij een fout te signaleren, en OnCompleted() om aan te geven dat de sequentie succesvol is voltooid. Deze drie methoden vormen het observer-contract, dat garandeert dat er na OnError of OnCompleted geen verder OnNext meer wordt aangeroepen.

3

Wat is het belangrijkste verschil tussen IEnumerable<T> en IObservable<T>?

Antwoord

IEnumerable<T> is een pull-model waarbij de consument de gegevens synchroon opvraagt met GetEnumerator() en MoveNext(). IObservable<T> is een push-model waarbij de bron de gegevens asynchroon naar de abonnees pusht via Subscribe(). IEnumerable blokkeert de aanroepende thread tijdens de iteratie, terwijl IObservable niet-blokkerende operaties en het samenstellen van asynchrone events met LINQ-operatoren mogelijk maakt.

4

Wat is de rol van de Select-operator in Rx.NET?

5

Hoe werkt de Where-operator in Rx.NET?

+21 gespreksvragen

Beheers .NET voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis