Back home

SwiftUI Serie 12 | La relación entre SwiftUI, Combine y Observation

Lo que realmente hay que distinguir es cómo se observan, propagan y cierran los cambios de estatus.

Cuando supe por primera vez sobre la gestión del estado de SwiftUI, estas palabras me confundieron en algún momento:

  • ObservableObject
  • @Published -Combinar -Observación

La pregunta suele ser:

  • Todos están relacionados con “los cambios de estado impulsarán las actualizaciones de la interfaz”.
  • Pero no en el mismo piso.

Entonces lo que realmente hay que aclarar es:

  • ¿A quién pertenece el estado?
  • Cómo se observan los cambios.
  • Cómo pasar la observación a la interfaz.

1. Combinar y Observar realmente no responden preguntas al mismo nivel.

Una situación común es compararlas directamente como relaciones sustitutas. Pero una comprensión más práctica es:

  • Combine se parece más a un conjunto de herramientas universales de transmisión reactiva
  • La observación se parece más a un mecanismo de observación del estado en la era SwiftUI.

En otras palabras, Combine tiene una conciencia más amplia del problema y Observation está más cerca de “cómo se rastrea y actualiza el estado de la interfaz”.

2. Lo que muchos equipos realmente necesitan es no estropear primero la cadena de propagación del estado.

Los problemas más comunes en proyectos reales son:

  • El propietario del estado es desconocido.
  • No está claro de dónde vienen los cambios.
  • No está claro qué capa está observando y qué capa está convirtiendo.

En este momento, no importa qué nombre se use para la capa inferior, la página se estropeará fácilmente.

3. Un juicio práctico: lo que se necesita ahora es “la interfaz observa el estado” o “el flujo de eventos se combina y procesa”

Si tu principal preocupación es:

  • Cambios de estado de la página
  • Actualización del modelo de vista
  • La interfaz de usuario se actualiza con el estado.

El estilo Observación suele ser más natural.

Si estás más preocupado por:

  • Fusionar múltiples fuentes de eventos asincrónicos
  • Manejo de eventos de transmisión
  • Combinaciones de cadenas de eventos más versátiles

La conciencia de Combine sobre los problemas sigue siendo valiosa.

4. Conclusión: Primero, enderece los límites estatales y luego hable sobre el mecanismo de observación específico.

Para decirlo en forma más breve, diría:

En SwiftUI, la verdadera clave de la relación entre Combine y Observation es si primero se aclaran los propietarios estatales, las fuentes de cambio y los límites de observación de la interfaz.

Cuando los límites sean claros, la selección de tecnología será mucho más clara; Cuando los límites no están claros, cambiar cualquier mecanismo sólo cambiará el nombre y continuará el caos.

FAQ

What to read next

Related

Continue reading