Um engenheiro de software está avaliando a aplicação de padrões de projeto (Design Patterns) em um novo módulo de um sistema. Dentre as opções abaixo, qual representa a principal vantagem de se utilizar o padrão Strategy?
- A)Garantir que a única instância de uma classe seja criada e que ela forneça um ponto de acesso global a si mesma.
- B)Permitir que um objeto modifique seu comportamento quando seu estado interno muda, parecendo que alterou sua classe.
- C)Definir uma família de algoritmos, encapsular cada um deles e torná-los intercambiáveis, permitindo que o algoritmo varie independentemente dos clientes que o utilizam.gabarito
- D)Delegar a criação de objetos a métodos de fábrica, encapsulando a lógica de criação de objetos.
- E)Compor objetos em estruturas de árvore para representar hierarquias parte-todo. Ele permite que os clientes tratem objetos individuais e composições de objetos de forma uniforme.