.NET

Programación reactiva

Reactive Extensions (Rx), IObservable, operators, schedulers, backpressure (opcional, menos común en las web APIs modernas)

24 preguntas de entrevista·
Senior
1

¿Qué es la interfaz IObservable<T> en Reactive Extensions (Rx.NET)?

Respuesta

IObservable<T> es la interfaz fundamental de Rx.NET que representa una fuente de datos basada en push. Expone un método Subscribe que permite a los observers suscribirse para recibir notificaciones asíncronas. Es la contraparte reactiva de IEnumerable<T>: mientras IEnumerable obtiene los datos de forma síncrona (pull), IObservable empuja (push) los datos de forma asíncrona hacia los suscriptores.

2

¿Cuáles son los tres métodos de la interfaz IObserver<T> en Rx.NET?

Respuesta

IObserver<T> define tres métodos: OnNext(T value) para recibir cada elemento de la secuencia, OnError(Exception error) para manejar errores y señalar el fin de la secuencia en caso de fallo, y OnCompleted() para indicar que la secuencia finalizó con éxito. Estos tres métodos forman el contrato del observer, que garantiza que después de OnError u OnCompleted no se llamará a ningún otro OnNext.

3

¿Cuál es la diferencia principal entre IEnumerable<T> e IObservable<T>?

Respuesta

IEnumerable<T> es un modelo pull en el que el consumidor solicita los datos de forma síncrona con GetEnumerator() y MoveNext(). IObservable<T> es un modelo push en el que la fuente empuja los datos de forma asíncrona a los suscriptores mediante Subscribe(). IEnumerable bloquea el thread llamante durante la iteración, mientras que IObservable permite operaciones no bloqueantes y la composición de eventos asíncronos con operators LINQ.

4

¿Cuál es el rol del operator Select en Rx.NET?

5

¿Cómo funciona el operator Where en Rx.NET?

+21 preguntas de entrevista

Domina .NET para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis