Então, vamos colocar isso para fora. Eu quero criar aplicativos excelentes e sei que você quer criar aplicativos excelentes. Nós dois sabemos que os aplicativos que nem sempre funcionam e nem sempre são rápidos simplesmente não são excelentes. Eles simplesmente não são.
Passei meus últimos 18 meses na Couchbase conversando com vários desenvolvedores e clientes sobre o que significa exatamente criar aplicativos que sempre funcionam e são sempre rápidos. Mais recentemente, tenho falado sobre isso no contexto da experiência do usuário (UX), já que essa é a nova moda sobre a qual todos gostam de falar. Interface de usuário (UI) encantadora, design de interação encantador, isso e aquilo encantadores. Na verdade, é bem simples: para obter uma excelente experiência do usuário, crie aplicativos com ótima aparência, que se comportem como esperado, sejam sempre rápidos e simplesmente funcionem - o tempo todo.
Um dos principais problemas de experiência do usuário que a maioria dos aplicativos enfrenta é a disponibilidade. Parece um problema de rede, certo? Mais ou menos. Na verdade, embora a rede seja a causa de um aplicativo não estar disponível, ela não é o problema. O problema é onde os dados do aplicativo estão localizados. A localização dos dados determina a dependência do aplicativo na rede. Se um aplicativo tiver que ser executado na nuvem toda vez que precisar ler ou gravar qualquer pequeno pedaço de dados, ele terá problemas. Se a rede não estiver disponível, o aplicativo não conseguirá acessar a nuvem e não funcionará. Se a rede estiver lenta, a obtenção de dados da nuvem será lenta e o aplicativo ficará lento.
Então, como seu aplicativo deve funcionar? Criamos este infográfico para falar sobre isso de uma forma um pouco mais interessante. Dê uma olhada:

Portanto, a resposta é... Dados locais e remotos + sincronização.
Não somos os únicos a fazer isso (mas acho que estamos fazendo melhor). Embora muitos tentem reivindicar a posição de melhor banco de dados/plataforma para dispositivos móveis, eles não conseguem atender aos requisitos mínimos para entrar no jogo.
Ok... vamos lá. Seus usuários vão adorar - em trânsito, no ar, no subsolo, no meio de uma multidão, no trabalho ou em qualquer outro lugar.
Saiba mais em https://www.couchbase.com/developers/mobile/
P.S. Escrever aplicativos dessa forma sempre resulta em MUITO menos código. Você escreve em um banco de dados local com todas as preocupações de rede e computação distribuída sendo tratadas pelo banco de dados. Na maioria das vezes, você nunca precisará tocar em uma conexão de rede (que ótimo!). Na maioria das vezes, você estará escrevendo código para lidar com questões de interface do usuário e experiência do usuário, e o restante das preocupações será transferido para a camada de dados.
Olá, Wayne,
Estou totalmente de acordo com os sentimentos de "robustez" deste artigo, mas devo admitir que achei os testes de unidade com o Couchbase um pouco problemáticos no início. Acho que o fato de o
Banco de dadoseGerentesão \'finais\', alguns frameworks de simulação não as simulam muito bem. Além disso, a popular API de simulação do Android \'Robolectric\' também teve dificuldades para iniciar atividades que incluíam o Couchbase lite.No entanto, já resolvi esses problemas, mas para ajudar outras pessoas na mesma situação, publiquei um artigo no blog e um repositório de código no GitHub que ajuda. O artigo do blog está aqui: https://benwilcock.wordpress.c... e o repositório do GitHub com todo o código de suporte está aqui: https://github.com/benwilcock/…
Continue com o excelente trabalho no Couchbase Lite, os esforços de sua equipe são muito apreciados!
Obrigado, Ben! Adoro seu trabalho! Faremos questão de compartilhá-lo com o restante da nossa comunidade.
Oi Wayne,
Estou convencido, mas como começo? Tenho um aplicativo para Android que usa um backend Restful Python + PostgreSQL, eu precisaria transferi-lo para o Couchbase Server? Não parece haver muitas informações sobre como lidar com isso?
Oi Samuel,
Para ter o melhor suporte para off-line, você precisaria migrar para o Sync Gateway e o Couchbase Lite juntos.
Você pode importar o conjunto de dados atual para o SG usando a API de descanso do administrador http://developer.couchbase.com…
Fique à vontade para entrar em contato conosco no fórum https://forums.couchbase.com/c…
Obrigado por compartilhar esse artigo. Compartilhei o link em minhas redes sociais.