Repositório para criação de um app usando componentes de arquitetura Android. Esse repositório é a base inicial para o aplicativo Libflix que está em um repositório privado.
Abaixo serão apresentados alguns Componentes de Arquitetura Android que foram anunciados na Google I/O 2017, os quais, são capazes de tornar a arquitetura dos aplicativos componentizada. Para demonstrar a capacidade desses componentes, o aplicativo Libflix foi desenvolvido. Além disso, técnicas de Micro Frontends foram usadas, com o objetivo de construir uma aplicação Android, componentizada, escalável e testável.
Esses componentes podem trazer diversos benefícios. As principaiscaracterísticas desses componentes são [2]:
-
LifeCycle: Gerencia o ciclo de vida do aplicativo, auxiliando os componentes Activity e Fragment a manterem as suas configurações salvas através da ViewModel, sendo assim, evitando perda de dados, e tornando o armazenamento ou o carregamento dessas informações mais seguro [15].
-
LiveData: Deve ser usado para criar objetos que podem notificar seus observadores quando eles são alterados, ou quando há alterações feitas no banco de dados [15]. Esse componente trabalha em conjunto com o LifeCycle, reconhecendo o ciclo de vida da aplicação [8].
-
ViewModel: É responsável por armazenar os dados presentes na interface de usuário, que não são descartados quando um aplicativo é rotacionado, ou para guardar dados que não estejam relacionados às configurações da Activity e Fragment [15].
-
Room: Guarda os dados das aplicações em execução em cache no armazenamento do dispositivo [9]. Essa ferramenta faz um mapeamento de objetos SQLite e pode ser utilizado para retornar um Objeto do tipo LiveData [15].
Página Inicial | Página de Busca na API | Página de Favoritos |
---|---|---|
Buscando filmes na API através do nome do filme. Também é possível realizar buscas na lista dos filmes favoritos que estão guardados na memória do dispositivo.
Ao clicar em Ver Mais é possível encontrar mais filmes em uma lista imensa de acordo com a categoria selecionada.
Os cards dos atores te direcionam para uma outra página contendo informações, como partipações do ator em outros filmes.
[2] Android Developers: Guide to App Architecture
[8] Android Developers: Visão Geral do LiveData
[9] Android Developers: Salvar dados em um banco de dados local usando o Room
[15] Android Developers: Componentes da Arquitetura do Android