Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 1 da Aula 2 - Muitos Descontos e o Chain of Responsibility

É impressão minha, ou isso é praticamente um loop com um if.

testa o primeiro desconto , caso não se encaixe , vai para o proximo. Uma espécie while..

1 resposta
solução!

Olá Marcos! Veja bem, pode-se fazer uma analogia, em certo ponto, com um while, mas isso não é um while. Em um while você faz a repetição de determinada regra de negócio de acordo com a condição por você indicada. No Chain of Responsibility, necessáriamente não será repetida a mesma regra de negócio, veja que cada Classe tem sua própria verificação, ou seja regras de negócios diferentes.

Mas eu entendi o que você quis dizer, você está se referindo ao fato de ficar repetindo a verificação enquanto uma não for atendida. Por isso eu disse que dá para fazer uma analogia em certo ponto. Mas repare que isso foi apenas uma coincidência, pois com o Chain of Responsibility eu não precisaria parar a verificação ao achar uma que atendesse a condição, poderia continuar com todas, ja com o while não.

Enfim, para o caso do exercício e da aula é possível sim fazer essa analogia, mas tenha em mente que o Chain of Responsibility não é uma espécie de while.

Espero ter ajudado! Bons Estudos!