Go to file
RinBa 0347c95581 IDs por categoria e remoção de ID adotado 2025-07-07 18:50:23 -03:00
assets Tela 2025-07-01 03:25:00 -03:00
modelo Add existing file 2025-06-10 10:57:45 -03:00
persistencia IDs por categoria e remoção de ID adotado 2025-07-07 18:50:23 -03:00
visao IDs por categoria e remoção de ID adotado 2025-07-07 18:50:23 -03:00
.gitignore gitignore 2025-06-10 11:27:41 -03:00
README.md Update README.md 2025-07-06 23:03:24 -03:00
main.py Main 2025-07-03 14:13:18 -03:00

README.md

Programação Modular

Trabalho Prático 2

Todo o código do programa deve estar organizado em um pacote cujo nome fica à escolha do grupo.
Dentro desse pacote deve ficar uma classe chamada Programa, que possui o método main e inicializa o programa.

Dentro do pacote também deve haver mais 3 pacotes: modelo, persistencia e visao.
O código pode ser implementado em qualquer linguagem orientada a objetos.
Todos os problemas do TP1 devem ser corrigidos para o TP2, exceto na camada de visão, que será substituída por completo.


Pacote modelo

  • Não há alterações em relação ao TP1.

Pacote persistencia

  • A classe Persistente deve ser alterada para virar uma classe genérica, que trabalha com o tipo T, que deve ser uma filha de Entidade.
  • Todos os atributos e métodos da classe Persistente devem se ajustar para trabalhar com o tipo T.
  • Deve ser criada uma classe de Exceção própria que é lançada quando houver buscas por entidades no banco de dados com ID inexistente.

Pacote visao

  • A interface com o usuário por meio de linha de comando do sistema deve ser substituída por uma interface gráfica.
  • Deve haver uma janela principal e uma ou mais janelas/painéis para cada entidade.
    • A partir da janela principal deve ser possível navegar até as demais janelas/painéis.
  • O painel/janela de cada entidade deve possuir:
    • Uma tabela que permite visualizar todos os dados existentes da entidade.
    • Um painel ou janela para cadastrar, apagar, editar e buscar registros.
  • O programa deve realizar tratamentos de exceção para:
    • Dados digitados incorretamente (por exemplo, letras onde devem haver apenas números).
    • Buscas por ID inexistentes.