Sistema desktop para gerenciamento de contatos desenvolvido em JavaFX, utilizando arquitetura MVC e padrão DAO para persistência de dados.
Este projeto foi desenvolvido com o objetivo principal de testar, aprender e aprimorar minhas skills em Java.
Embora seja um sistema funcional, o foco foi o desafio técnico e a aplicação de conceitos de Engenharia de Software em uma aplicação Desktop.
O padrão arquitetural escolhido foi o MVC (Model-View-Controller), devido à sua popularidade e eficiência na separação de responsabilidades.
Sobre a modularização do FXML e do Dashboard, tomei uma decisão consciente de design voltada para o aprendizado:
"Seria perfeitamente possível utilizar uma única tela (
ListaContatos) e apenas alternar a lógica do Controller para exibir 'Favoritos' ou 'Deletados'. Contudo, como este foi um desafio que propus a mim mesmo, optei por criar Scenes específicas e modularizar o FXML. Meu objetivo foi treinar e desenvolver habilidades de transição de cenas e reutilização de componentes, saindo da zona de conforto".
Como meu foco principal é o Backend, utilizei ferramentas para auxiliar na construção da interface visual:
- Java 21 & JavaFX: Core da aplicação.
- Scene Builder: Integrado ao IntelliJ IDEA Community para a construção visual das telas FXML.
- Google Stitch: Utilizado para gerar a paleta de cores e o design inicial da interface (IA).
- MySQL: Banco de dados relacional.
- JDBC: Para conexão e manipulação dos dados (DAO).
- Clone o repositório.
- Configure o banco de dados MySQL (script disponível no projeto).
- Execute a classe
Main.javaatravés da sua IDE.
Desenvolvido por Kayck Arcanjo.
