Com relação a padrões de projeto e GRASP, julgue o próximo i...
Em um cenário em que é necessário minimizar dependências e maximizar o reúso, bem como atribuir uma responsabilidade para que o acoplamento mantenha-se fraco, o padrão Expert é mais adequado que o padrão Low Coupling.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é: Errado (E).
Vamos entender o porquê dessa resposta ser correta através da análise dos conceitos envolvidos.
Os padrões de projeto são soluções reutilizáveis para problemas comuns no desenvolvimento de software. Já os GRASP (General Responsibility Assignment Software Patterns) são um conjunto de diretrizes para atribuição de responsabilidades nos sistemas orientados a objetos.
Nesse contexto, temos dois padrões mencionados: Expert e Low Coupling. Vamos explicar cada um deles:
Expert: O padrão Expert sugere que a responsabilidade de realizar uma tarefa ou de conhecer a informação necessária para realizá-la deve ser atribuída à classe que possui a maioria das informações necessárias para completá-la. Isso significa que a responsabilidade deve ser atribuída ao objeto que tem a maior quantidade de conhecimento relevante.
Low Coupling: Este padrão visa minimizar as dependências entre classes ou módulos de um sistema. Um acoplamento baixo (ou fraco) torna o sistema mais fácil de manter e modificar, pois mudanças em uma parte do sistema terão menos impacto em outras partes.
Análise da questão: A questão sugere que, em um cenário onde é necessário minimizar dependências (ou seja, ter baixo acoplamento) e maximizar o reúso, o padrão Expert seria mais adequado do que o padrão Low Coupling. Contudo, isso está incorreto.
O padrão Low Coupling é especificamente projetado para minimizar dependências e manter o acoplamento fraco. Portanto, ele é o mais adequado para atender a esses requisitos. Embora o padrão Expert também seja importante e útil em diversas situações, seu foco principal é a atribuição de responsabilidades baseada no conhecimento que uma classe possui, e não diretamente na minimização de dependências.
Logo, a alternativa adequada é Errado (E), pois o padrão Low Coupling é mais diretamente voltado para minimizar dependências e maximizar o reúso, mantendo o acoplamento fraco, o que é o foco do enunciado.
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
Errado. O padrão Low Coupling (baixo acoplamento) é mais recomendado.
Benefícios:
Menor dependência entre as classes;
Mudar de uma classe que tem menor impacto sobre outras classes;
Maior potencial de reutilização.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo