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

E quando sua "estratégia" depende de uma condição que vem do banco ou de outra fonte de dados?

Imagine o cenário...

vc recebe um arquivo de texto com o detalhamento da conta telefônica.. lá tem todos os registros de ligações sendo que cada ligação é categorizada de uma forma: Local DDD VC1 = celular local VC2 = Celular de outra operadora local VC3 = celular interurbano DDI

cada tipo tem uma regra de tarifação diferente, então vc cria classes diferentes para aplicar essas regras todas implementando a mesma interface. A sua classe cliente vai ter que procurar saber quem é que vai tratar aquela regrar...

como fazer isso sem aplicar ifs?

1 resposta
solução!

Eu usaria o padrão chain of responsability neste caso, pois caso a minha "1º classe" não trate da conta Local DDD VC1 por exemplo, saberá passar adiante para a próxima classe, e assim sucessivamente até que se chegue na classe que trate o tipo de tarifação.(supondo que haja uma classe que a trate)