Não encontrei no exercício do Filtro o arquivo "Template"?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Não encontrei no exercício do Filtro o arquivo "Template"?
Não tem um arquivo Template, na verdade os filtros todos herdam e implementam os métodos da classe Filtro. Fiz confusão porque no exercício do vídeo que usou impostos, existia um arquivo TemplateDeImpostoCondicional que depois passou a ser um extends da classe Imposto. Nos impostos Imposto->TemplateDeImposto-><vários impostos> Nos filtros Filtro-><vários filtros>?
Então, mesmo no caso dos impostos, na solução do Decorator, o arquivo Template poderia ser dispensado?
Oi João, tudo bom?
O arquivo TemplateDeImpostosCondicionais é usado no capitulo de template method como uma classe abstrata com objetivo de que toda classe que herde de TemplateDeImpostosCondicionais possa usar o método calcula com as implementações referentes a classe concreta. Nesse caso, a classe Template é obrigatória pois faz parte da implementação do pattern
No caso do decorator, temos uma classe abstrata Imposto, que implementa um template method calculoDoOutroImposto, porém esse é protegido e é utilizado em cadeia nos impostos para calcular valores compostos. Nesse caso, você poderia implementar o decorator sem o template method porém a implementação pode não ser a melhor.
A ideia é que existem diversas formas de implementar um mesmo pattern =)
Abraço