Teoría 75 min 33 preguntas
TeoríaPaso 1 de 14

Ya lo habéis escrito: el Observer del GoF

Las dos clases anteriores construyeron las piezas; hoy les ponemos nombre y contrato.

Lo que escribiste Cómo se llama hoy
Clase 1 · Sensor: fuente con lista privada de listeners, alta, baja y difusión sobre una copia. Sujeto (Subject) y observadores. Le faltaba estado propio y contrato.
Clase 2 · Despachador: Map tipo → lista de handlers; on() registra; despachar() difunde. Bus de eventos; el tipo era el topic.
Lo que falta La pantalla como un suscriptor cualquiera: MVC / MVVM.

Dos roles, cuatro operaciones

Sujeto · Subject / Observable

Tiene estado (p. ej. temperatura) y una lista de observadores. Operaciones: attach (suscribir), detach (desuscribir) y notify (notificar), que recorre la lista y llama a update() en cada uno.

Observador · Observer

Solo promete un método, update() (aquí actualizar(t)), que él nunca llama: se lo llama el sujeto. Pantalla pinta, Alarma avisa si se supera un umbral, Registro guarda.

Tres invariantes

  1. Solo el sujeto cambia su estado. private set: nadie de fuera escribe temperatura.
  2. Sin cambio, no hay aviso. if (nueva == temperatura) return.
  3. El observador no pregunta. Le llaman. No hace polling ni conoce a los demás.

Desacoplamiento: el termómetro solo sabe que le escuchan «observadores». Añadir un cuarto mañana no toca ni una línea de Termometro.

Responde para continuar

0/2
TAREA 1
¿Qué significa GoF?
Elige una respuesta
TAREA 2
¿Cuáles son invariantes del Observer tal como lo hemos definido?
Marca todas las correctas