Dropbox ha anunciado recientemente que dejará de utilizar sus API de sincronización y almacenamiento de datos. para centrarse en su Core API. Aunque podemos entender la necesidad imperiosa de centrarse, eso no cambia la situación en la que se encuentran muchos de los desarrolladores que dependen de estas API.
Como proveedores de software, sin duda podemos empatizar con los ingenieros de Dropbox, pero aún más con los usuarios que dejan comentarios como estos en el anuncio de desaprobación:
"acabas de matar una de las ventajas que tenías sobre otras empresas que compiten en este mercado". - SneakerXZ
"No puedo expresar lo decepcionado que estoy con esta decisión. No habría seguido el camino de Dropbox Sync si hubiera sabido que Dropbox me iba a quitar la alfombra". - Steve S
"Básicamente lo que está diciendo es que no es capaz de soportar escenarios de sincronización por lo que es mejor idea tener un montón de desarrolladores independientes con sus propias soluciones (probablemente defectuosas)" - Antti Rantanen
Si te has quemado por perder el acceso a una API, de repente el atractivo de los ecosistemas de código abierto está mucho más claro. En este caso, considéralo una oportunidad para pasar a una pila más potente y que tú controlas.
Si desea una solución de sincronización completa de código abierto (con bibliotecas nativas para la mayoría de las plataformas móviles), hemos invertido décadas de tiempo de ingeniería en Couchbase Móvil. Tiene más que suficiente capacidad para reemplazar la mayoría de las cosas que podrías estar usando con Dropbox Datastore o Sync APIs. Y una vez que hayas comenzado a usarlo, estarás listo para aprovechar las características más ricas como el control de acceso de grano fino, web hooks, y p2p.
Veamos las características de la API de Dropbox, y veamos a qué características de Couchbase Mobile migrarías. En una futura entrada del blog nos sumergiremos en el código de algunas de estas migraciones.
Tanto la API de Sync como la de Datastore autentican usando la cuenta de Dropbox del usuario. Couchbase Mobile usa autenticación de terceros (incluyendo soporte integrado para login de Facebook, y extensibilidad para integrarse con el servidor de autenticación existente), por lo que no es necesario que los usuarios se den de alta en otro servicio.
La API de Dropbox Sync es sólo un sistema de archivos con operaciones para reemplazar o añadir a archivos binarios o de cadena. Esto se corresponde con adjuntos binarios en Couchbase Mobile. Puedes aprender más sobre adjuntos en la documentacióno consulte este post sobre compartir fotos entre iguales utilizando archivos adjuntos.
La API de Dropbox Datastore es una API JSON, donde los desarrolladores pueden crear tablas y llenarlas con registros. Incluso hay un tipo de registro especial para listas. Esta API es bastante buena, está dirigida directamente a los casos de uso que son el punto dulce de Couchbase Mobile. Eso también significa que no es difícil cambiar una por otra.
Una diferencia en los modelos de datos entre Dropbox Datastore y Couchbase Mobile es que con Dropbox, el desarrollador registra estrategias de resolución de conflictos que se ejecutan durante la sincronización. Con Couchbase Mobile, la resolución de conflictos puede hacerse offline, dando a los desarrolladores flexibilidad sobre cuándo y cómo fusionar cambios conflictivos.
Aparte de eso, cualquier código que trabaje con registros debería poder asignarse limpiamente a Couchbase Lite documenta las operaciones. En la próxima entrada de esta serie veremos un ejemplo de lo fácil que es.