Olá pessoal !
Estou desenvolvendo um modelo de classes para uma aplicação financeira, e tenho algumas dúvidas sobre a melhor forma de se fazer.
Basicamente, a classe principal da aplicação se chama Operacao, que representa uma operação financeira, que pode ser crédito ou débito, tem os atributos Data, Descrição e Valor.
Existirão três tipos de Operações (não sei se aqui devo criar sub-classes):
Simples (acontece uma única vez, em uma data específica)
Fixa (acontece todos os meses, ex. recebimento de salário)
Parcelada (acontece n vezes, cujo valor é o valor da parcela)
Os tipo 2 e 3 terão um atributo adicional, diaVencimento.
Não sei se o melhor é criar 3 classes diferentes ou criar uma única classe e espicificar um atributo “tipo” que recebe “SIMPLES”. “FIXA” ou “PARCELADA”
Baseada na experiência de vocês, o que seria melhor?
Seguinte, se a operação para as três situações tiverem o mesmo comportamento, não há porque criar três classes … tendo em vista que a entrada e saida de dados sempre serão as mesmas… o que vai controlar isso é algum método que valida os periodos.
Agora se o comportamento das operações forem distintas com métodos e atributos especificos, fica show de bola a implementação das três subclasses.
Basicamente o sistema é um controle de conta corrente, uma operação acontece quando se faz um saque, paga-se uma conta ou deposita-se um cheque.
Como o controle tem que ser feito por mês, cada operação fixa deve “aparecer” todos os meses, e cada operação parcelada tem que aparecer nos meses onde há a parcela. Por exemplo, uma compra realizada em Maio parcelada em 3 vezes deve aparecer em Maio, Junho e Julho.