
Bom dia, Habr!
Não é segredo que o Google
aprovou recentemente o Kotlin como a linguagem de programação prioritária para o sistema operacional Android. Este e os artigos subsequentes falarão sobre a criação de um aplicativo nesse idioma.
Tópicos de aplicação
Um aplicativo já pode ser considerado bom se resolver um problema, o que significa que ajuda as pessoas. A seguinte entrada foi encontrada em minhas anotações - notificações de novos filmes no cinema. Nos aplicativos que revi, essa funcionalidade não foi encontrada e, se existir em algum lugar, escreva nos comentários.
Protótipo
A criação de protótipos permite determinar a funcionalidade básica. Se o aplicativo já tiver análogos, você deverá primeiro analisá-los. Talvez seus autores já tenham decidido as questões importantes em que você está pensando agora.
Diagrama de Caso de Uso
Defina a funcionalidade requerida do aplicativo. Primeiro de tudo, o usuário precisará encontrar novos itens, e isso exigirá filtros. Depois disso, você precisará salvar os filmes, os quais serão notificados, o que significa que você precisará exibir esta lista. Agora desenhe um diagrama de Caso de Uso.
Design de UX / UI
Descrevemos o layout das telas usando o software para criação de protótipos de UX / UI, com base no diagrama criado. Para isso, usamos o Mockplus, a funcionalidade básica do programa é fornecida gratuitamente. As melhores práticas de design de componentes são compiladas
aqui .
Considere layouts mais elaborados. Todas as imagens são clicáveis.
- Na página inicial, o usuário pode ver todas as notícias sobre as quais receberá notificações. Se o usuário não quiser receber, ele poderá clicar na campainha.
- Na guia, você pode encontrar todos os novos produtos adequados para os desejos indicados na guia Configurações e adicioná-los à lista para notificação.
- A guia Configurações permite configurar filtros para procurar novos produtos, como classificação e gêneros da IMDb.
Escolha da arquitetura
Usamos a arquitetura MVP, ou seja, Model-View-Presenter (model-presentation-apresentador).
As visualizações são Atividade e Fragmentos. O modelo fornece trabalho com o servidor, e o apresentador fornece interação entre a apresentação e o modelo.

Leia mais sobre essa arquitetura
aqui .
Modelo de banco de dados ER
O banco de dados local armazenará em cache as respostas recebidas do servidor para reduzir a frequência de solicitações e, assim, reduzir a carga. Considere um gráfico de ER.

A essência do Movie é responsável por armazenar informações gerais sobre novos produtos, a essência do gênero é para gêneros e os gêneros de filme contêm gêneros para cada novo item.
Conclusão
O próximo artigo abordará o design de aplicativos e a lógica principal.
Parte 2 (Design)