O APP foi desenvolvido para o Mobile Challenge 2021.
A empresa Pharma Inc, está trabalhando em um projeto em colaboração com sua base de clientes para facilitar a gestão e visualização da informação dos seus pacientes de maneira simples e objetiva em uma aplicação onde podem listar, filtrar e expandir os dados disponíveis. O seu objetivo nesse projeto, é trabalhar no desenvolvimento da Aplicação end que consumirá a API da empresa Pharma Inc seguindo os requisitos propostos neste desafio.
Toda a estrutura do projeto foi desenvolvida com a linguagem Kotlin.
Ele foi dividido em três partes:
- Uma tela inicial com o logo.
- A segunda tela com os dados obtidos a API, que lista os Pacientes com seus dados princípais.
- Para expandir a informação dos pacientes, adicionamos o card como clicavél, exibindo os dados completos do Paciente.
1.Logo da Marca: Pharma Inc
-
Obtemos os dados, utilizando a API do Random User: https://randomuser.me/api/
-
Documentação da REST API: https://randomuser.me/documentation
-
Além de realizar a request, aplicamos alguns filtros na API:
- Limitar em 50 resultados por request;
- Utilizamos o Loading more para indicar que estamos carregando mais dados da API
- Para expandir a informação dos pacientes, foi adiciona o card como clicavél e exibimos os seguintes campos do paciente:
- Imagem
- Nome completo
- Gênero
- Data de nascimento
- Telefone
- Nacionalidade
- Endereço
- ID (Número de identificação)
Além do desafio proposto com as telas, temos alguns diferenciais:
- Diferencial 1 -> Um filtro por Gênero na tabela;
- Diferencial 2 -> Buscador para poder filtrar por nacionalidade;
- Diferencial 3 -> Escrever Unit Tests na Lista de Pacientes. Escolher a melhor abordagem e biblioteca;
- Na estrutura do APP com a linguagem Kotlin, framework e/ou tecnologias usadas
- Fragment
- Jetpack Architecture Components;
- Containers
- Binding
- Arquitetura MVVM
- Graph
- EventBus
- DataStore
- LiveData
- Observe
- RecyclerView
- Adapter
- ConstraintLayout
- Coroutines
- EventBus
- Animation lottie
- Navigation
- Lifecycle
- Coroutines
- Card View
- Picasso
- Material Design
- Koin
- Moshi
- Mockito
- Retrofit
- minSdkVersion 21
- targetSdkVersion 30
Challenge-by-Coodesh finalizado. Ainda pode ser feita algumas melhorias, mas o que foi pedido está feito. Espero que possamos falar mais sobre em um futuro próximo.
Foi um momento fantástico de aprendizagem e crescimento. Qualquer dúvida, estou aqui...