Firebase - Dispensando o uso do tradicional backend para sincronização de dados
Francielly Moraes
Sobre mim
O tradicional
Estrutura Backend - Servidores
● Servidor de dados● Servidor do sistema
Estrutura Backend - Servidores
● Configuração
OU
Estrutura Backend - Segurança da informação e conectividade
Estrutura Backend - Escalabilidade
● Vertical● Horizontal
SaaS
É de responsabilidade do provedor: (servidores, conectividade, cuidados com segurança da informação)
Firebase
Firebase
● Serviço na nuvem projetado para alimentar em tempo real aplicações colaborativas.
Firebase
● Usa NoSql● Dados armazenados em estrutura JSON
Firebase
Firebase
● Um módulo do sistema se comunica com o Firebase, o outros com o servidor já existente
● Todos o sistema se comunica com o Firebase
Firebase
● As alterações feitas são automaticamente sincronizados com a nuvem Firebase e com outros clientes dentro de milissegundos.
Como usar?
Como usar? - Gradledependencies { compile 'com.firebase:firebase-client-android:2.3.1+'}
android { ... packagingOptions { exclude 'META-INF/LICENSE' exclude 'META-INF/LICENSE-FIREBASE.txt' exclude 'META-INF/NOTICE' }}
Como usar? - Maven
<dependency> <groupId>com.firebase</groupId> <artifactId>firebase-client-android</artifactId> <version>[2.3.1,)</version></dependency>
Como usar? - SDK
● Download SDK Firebase
Como usar?
● Adicione a permissão de internet no Manisfest
<uses-permission android:name="android.permission.INTERNET" />
● Inicie o Firebse, na activity, caso tenha apenas uma. Dê preferencia para a instancia de Application
@Overridepublic void onCreate() {
super.onCreate(); Firebase.setAndroidContext(this); // other setup code
}
Como usar? - Leitura e escrita
Firebase myFirebaseRef = new Firebase ("https://<FIREBASE-APP>.firebaseio.com/");
myFirebaseRef.child("message").setValue("Hello world!!");
Como usar? - Leitura e escrita
myFirebaseRef.child("message").addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot snapshot) { System.out.println(snapshot.getValue()); //prints "Hello world!!" } @Override public void onCancelled(FirebaseError error) { }});
Quanto custa?
Como usar?
Onde buscar informações ?
https://www.firebase.com/
Dúvidas?
Contato
https://plus.google.com/+FranciellyMoraes3
https://br.linkedin.com/in/franms