Versão de demonstração do projeto.
Aplicação de CRUD (Create, Read, Update, Delete) para gerenciar clientes, desenvolvida com o framework Flask.
O código está estruturado em camadas para melhor organização e manutenção, seguindo boas práticas de design de software.
apresentacao/
: Camada responsável pela interação com o usuário, através de um menu no terminal.validacao/
: Camada de lógica de negócios. Contém as regras de validação e implementação de padrões de projeto como Observer.acesso_dados/
: Camada responsável pelo modelo de dados e persistência no banco de dados SQLite.main.py
: Execução da aplicação.
Gerencia a interação com o usuário, exibindo menus e coletando informações. Utiliza funções para acessar a camada de validação e realizar operações no banco de dados.
Implementa a lógica de negócios e validação dos dados. Utiliza o padrão de projeto Observer para logar operações importantes.
Gerencia a comunicação com o banco de dados SQLite usando SQLAlchemy, implementando operações CRUD para a tabela de clientes.
- Python 3.9 ou superior
-
Clone o repositório ou baixe o código.
-
Navegue até o diretório do projeto.
-
Instale as dependências:
pip install -r requirements.txt
-
Execute o projeto:
4.1 Para uso convencional (precisa de 2 terminais funcionando)
python frontend.py # No 1º terminal
python backend.py # No 2º terminal
4.2 Para testes automatizados(usar somente com um terminal)
pytest tests.py
Ao executar o programa, será exibido um menu no terminal com as opções:
- Criar cliente: Permite adicionar um novo cliente.
- Listar clientes: Mostra todos os clientes cadastrados.
- Atualizar cliente: Edita as informações de um cliente existente.
- Deletar cliente: Remove um cliente pelo ID.
- Sair: Encerra o programa.
As dependências do projeto estão listadas no arquivo requirements.txt
.