E quando preciso aplicar várias regras de negócio num objeto ? Qual a melhor forma de aplicar essas regras para que o código não pareça código estruturado e sim orientado a objetos?
Por exemplo:
void processSale(Sale sale) {
applyInstallmentsValidation(sale);
applySaleReceipt(sale);
applySaleUserValidation(sale);
}
Um chain of responsability ?