Introdução ao Room – Android Architeture Components
Coders on Beer
Marcus ‘Aleátorio’ Souza
- Desenvolvedor a mais de 10 anos
- Androider na Concrete desde Nov/16
- Sou casado e pai de um menino de 3 anos
- Integrante do “capítulo” de cubo mágico
https://www.linkedin.com/in/marcus-souza-466a2749
Persistência de
Dados
Opções de armazenamento
•Shared Preferences
•Armazenamento Interno
•Armazenamento Externo
•Banco de Dados SQLite
•Conexão de rede
Opções de armazenamento
•Shared Preferences
•Armazenamento Interno
•Armazenamento Externo
•Banco de Dados SQLite
•Conexão de rede
SQLITE
É o banco de dados oficial da plataforma android
Ele é relacional, de código aberto, com sintaxe SQL e transações.
Já está incorporado aos dispositivos android, o que torna fácil a sua utilização
O que é ?
Com o Sqlite no Android, podemos guardar os seguintes tipos:
•Text
•Null
•Integer
•Real
•Blob
Data Types
ORM
Object Relational Mapping. É uma técnica para converter dados entre sistemas de tipos incompatíveis usando qualquer linguagem de programação orientada a objetos.
As tabelas são representadas por classes e os registros como instâncias das classes correspondentes.
O que é ?
•ORMLite
•GreenDAO
•Realm
•Room
Quais existem ?
•ORMLite
•GreenDAO
•Realm
•Room
Quais existem ?
Room
É uma camada de abstração sobre o SQLite. Existem 3 componentes importantes dentro do Room:
•DataBase
•Entity
•Dao
O que é ?
Componentes
Database
Entity
Dao
Nosso ponto de acesso aos dados persistidos na base de dados, nossos dados relacionais.
A classe precisa ser abstrata, anotada com @Database e extender a classe RoomDatabase.
Componentes
Database
Entity
Dao
Nada mais do que a representação da tabela no nosso banco de dados.
As anotações básicas que utilizamos dentro de uma entidade são:
● @Entity● @PrimaryKey● @ColumnInfo● @Ignore
Componentes
Database
Entity
Dao
Interface que contém os métodos utilizados para acessar a nossa base de dados.
As anotações básicas que utilizamos dentro de uma dao são:
● @Dao● @Insert● @Delete● @Update● @Query
Migrations
Uma forma segura de manter os dados já salvos do seu aplicativo quando alterações são feitas no seu modelo. Se uma alteração no modelo for feita e uma migration não for informada, o app pode crashar ou até pior, todos os dados do seu usuário podem ser perdidos.
O que é ?
Show me the Code
Chega de palavras
Centro
Av. Presidente Wilson,
231 - 29º andar
(21) 2240-2030
Cidade Monções
Av. Nações Unidas,
11.541 - 3º andar
(11) 4119-0449
Savassi
Av. Getúlio Vargas, 671
Sala 800 - 8º andar
(31) 3360-8900
www.concrete.com.br