Usando o Metodo Strategy temos ganho na velocidade de processamento do código e nos resultados obtidos? (não faz parte também ter a velocidade de processamento como tática na estratégia de desenvolvimento?)
Usando o Metodo Strategy temos ganho na velocidade de processamento do código e nos resultados obtidos? (não faz parte também ter a velocidade de processamento como tática na estratégia de desenvolvimento?)
Em termos de processamento, chuto que não (só um teste poderá dizer com fidedignidade), porque a lógica que será executada é da estratégia passada. Essa lógica pode estar na estratégia ou fixa dentro da classe que as instruções serão as mesmas. Contudo, como a lógica da estratégia não está fixa no método de uma classe, o espaço em memória utilizado pela definição da classe (não sua instâncias) fica reduzido.
É uma leitura que faço. Agora, você tocou em um ponto importante: estética de código VS performance. Há aqueles que vão para um ou outro lado da balança, mas na prática, no final, é uma mistura da necessidade do projeto e da inclinação do programador.
Eu gosto de ir para a estética (código mais fácil de ler). Há outros instrutores aqui do Alura que vão para o lado da performance. É um tradeoff... você analisa a situação e vê se pode ir mais para um lado ou para o outro no final das contas.