Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Dúvida no Padrão Chain of Responsability

Olá! Acabei de ver o vídeo sobre o Chain of Responsability e fiquei pensando: em vez de haver um método para determinar o próximo, não poderia existir um ArrayList que os objetos do desconto receberiam no construtor, e para passar os descontos se usasse um for?

4 respostas

Olá Matheus, tenta imaginar um milhão de registros e você tentando verificar ou controlar item por item dentro de um array gigante. Como seria isso? Acho que pelo array não seria uma boa opção, tanto para manutenção quanto pela performance.

solução!

Oi Matheus,

Você pode implementar do jeito que quiser! Lembre-se que a parte que mais importa em um padrão é sua motivação, e não a implementação!

A implementação que mostrei é a mais comum! :)

Um abraço, Maurício

Maurício Aniche, não entendi. Pra mim, um padrão era justamente para facilitar a implementação. Ou seja, implementar de uma forma coesa e eliminando as complexidades ou pelo menos tentar reduzi-las.

Agora vi sua resposta e percebi que a motivação e mais importante que a implementação???

Me desculpa pela ignorância é que não consegui entender mesmo...

Abraço, David.

Oi David,

É isso mesmo. O mais importante de um padrão é a sua motivação. Qual problema você tem e qual padrão resolve.

A implementação não é única (e não pode ser única), afinal, você tem linguagens de programação/frameworks diferentes, que tem recursos diferentes!

Um Decorator nunca é igual ao outro. Um Observer não é igual ao outro.

Um abraço!