Apps móviles · Mixto

Trabajar sin red: una app que no se rompe en un ascensor

En una línea: Diseña la app en torno al supuesto de que no hay red, y obtendrás gratis una app que además se siente rápida cuando la hay.

El supuesto de base

Una red móvil no es un interruptor de encendido y apagado sino un espectro: lenta, entrecortada, conectada pero sin tráfico. Una app que da por hecha una buena conexión muestra un círculo de carga infinito justo cuando el usuario la necesita.

El enfoque correcto: el dispositivo mantiene una fuente de verdad local, y la red es un proceso de sincronización en segundo plano.

Tres mecanismos

Caché de lectura. Lo que se cargó una vez se muestra de nuevo al instante, con una marca sutil de “actualizando”.

Cola de escritura. Las acciones del usuario se guardan localmente y se envían cuando hay conexión. La interfaz muestra el resultado al instante.

Resolución de conflictos. Qué pasa cuando dos dispositivos cambiaron el mismo elemento. Decide de antemano: gana el último, fusión por campos, o preguntar al usuario.

Qué debe ver el usuario

El estado de sincronización de forma silenciosa pero clara, y qué no se ha enviado todavía. Ocultar el estado por completo genera desconfianza en cuanto algo desaparece.

En profundidad

Guarda una versión o marca de tiempo de actualización del servidor en cada registro, y envíala de vuelta en la escritura para detectar un conflicto. Sin ella, dos actualizaciones en paralelo se pisan en silencio: el peor tipo de pérdida de datos, porque nadie recibe un error.