Com relação a padrões de projeto e GRASP, julgue o próximo i...

Próximas questões
Com base no mesmo assunto
Ano: 2013 Banca: CESPE / CEBRASPE Órgão: SUFRAMA
Q1209611 Arquitetura de Software
Com relação a padrões de projeto e GRASP, julgue o próximo item.

O padrão de projeto Strategy contém um objeto strategy que é análogo ao objeto state do padrão de projeto State. Contudo, o primeiro objeto encapsula um algoritmo, enquanto o segundo encapsula informações sobre o estado de um objeto.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos analisar a questão apresentada sobre padrões de projeto e GRASP.

Gabarito: C (Certo)

A questão explora a comparação entre dois padrões de projeto muito conhecidos: Strategy e State. Esses padrões são frequentemente usados para diferentes propósitos, mas compartilham algumas similaridades que podem confundir os estudantes.

Primeiro, vamos entender o que cada padrão faz:

Strategy: Este padrão é utilizado quando você deseja definir uma família de algoritmos, encapsulá-los e torná-los intercambiáveis. O objeto strategy encapsula um algoritmo e permite que o algoritmo varie independentemente dos clientes que o utilizam. Usamos o Strategy, por exemplo, para definir diferentes métodos de ordenação (como ordenação por bolha e ordenação rápida) e poder alternar entre eles conforme necessário.

State: Este padrão é utilizado quando um objeto deve mudar seu comportamento de acordo com seu estado interno. O objeto state encapsula informações sobre o estado de um objeto e permite que o objeto altere seu comportamento quando seu estado muda. Um exemplo clássico é o de uma máquina de vendas automáticas que muda seu comportamento (como aceitar moedas, dispensar produtos, etc.) com base no estado atual (esperando moeda, produto selecionado, etc.).

Assim, a questão afirma corretamente que o padrão Strategy contém um objeto strategy que é análogo ao objeto state do padrão State, mas destaca que suas finalidades são distintas. O strategy encapsula um algoritmo, enquanto o state encapsula informações sobre o estado de um objeto.

Portanto, a alternativa correta é C (Certo) porque a explicação fornecida na questão está alinhada com a definição e a utilização dos padrões de projeto Strategy e State.

Espero que essa explicação tenha esclarecido as diferenças e semelhanças entre os padrões Strategy e State. Se ainda tiver dúvidas, sinta-se à vontade para perguntar!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Definições

Strategy: Permite que você defina uma família de algoritmos, coloque-os em classes separadas, e faça os objetos deles intercambiáveis.

State: Permite que um objeto altere seu comportamento quando seu estado interno muda. Parece como se o objeto mudasse de classe.

Portanto, item correto.

A questão fala com relação ao GRASP.

E esses são padrões do GoF.

Matquei de cara como ERRADO.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo