
Reaktive Programmierung
Reactive Extensions (Rx), IObservable, operators, schedulers, backpressure (optional, in modernen web APIs weniger verbreitet)
1Was ist die IObservable<T>-Schnittstelle in Reactive Extensions (Rx.NET)?
Was ist die IObservable<T>-Schnittstelle in Reactive Extensions (Rx.NET)?
Antwort
IObservable<T> ist die grundlegende Schnittstelle in Rx.NET, die eine Push-basierte Datenquelle darstellt. Sie stellt eine Subscribe-Methode bereit, mit der sich Observer registrieren können, um asynchrone Benachrichtigungen zu empfangen. Es ist das reaktive Gegenstück zu IEnumerable<T>: Während IEnumerable Daten synchron per Pull abruft, pusht IObservable Daten asynchron an die Abonnenten.
2Welche drei Methoden hat die IObserver<T>-Schnittstelle in Rx.NET?
Welche drei Methoden hat die IObserver<T>-Schnittstelle in Rx.NET?
Antwort
IObserver<T> definiert drei Methoden: OnNext(T value), um jedes Element der Sequenz zu empfangen, OnError(Exception error), um Fehler zu behandeln und im Fehlerfall das Ende der Sequenz zu signalisieren, und OnCompleted(), um anzuzeigen, dass die Sequenz erfolgreich abgeschlossen wurde. Diese drei Methoden bilden den Observer-Vertrag, der garantiert, dass nach OnError oder OnCompleted kein weiteres OnNext aufgerufen wird.
3Was ist der Hauptunterschied zwischen IEnumerable<T> und IObservable<T>?
Was ist der Hauptunterschied zwischen IEnumerable<T> und IObservable<T>?
Antwort
IEnumerable<T> ist ein Pull-Modell, bei dem der Konsument die Daten synchron mit GetEnumerator() und MoveNext() anfordert. IObservable<T> ist ein Push-Modell, bei dem die Quelle die Daten über Subscribe() asynchron an die Abonnenten pusht. IEnumerable blockiert während der Iteration den aufrufenden Thread, während IObservable nicht-blockierende Operationen und die Komposition asynchroner Ereignisse mit LINQ-Operatoren ermöglicht.
Welche Rolle spielt der Select-Operator in Rx.NET?
Wie funktioniert der Where-Operator in Rx.NET?
+21 Interview-Fragen
Weitere .NET-Interviewthemen
C#-Grundlagen
LINQ & Delegates
C#-Sprachgrundlagen
ASP.NET Core Grundlagen
ASP.NET Core Request-Lebenszyklus
Configuration & Settings
Anwendungslebenszyklus
Dependency Injection
Entity Framework Core
Minimal APIs
Web-API-Entwicklung
Async in ASP.NET Core
Authentication & Authorization
HttpClient & Networking
JSON-Serialisierung
Entity Framework Core fortgeschritten
Erweiterte C#-Funktionen
Clean Architecture
Logging, Monitoring & Observability
Unit-Tests & xUnit
Integrationstests
Docker & Containerization
NuGet Package Management
Memory Management & GC
Async/await & Patterns
.NET Design Patterns
Performance-Optimierung
Sicherheit & Best Practices
SignalR & Echtzeit
Microservices-Architektur
Meistere .NET für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten