Padrões de projeto (ou design patterns) são construções e s...

Próximas questões
Com base no mesmo assunto
Q3881305 Arquitetura de Software
Padrões de projeto (ou design patterns) são construções e soluções repetíveis e reutilizáveis para situações e problemas comuns, que visam melhorar a qualidade dos sistemas de software.
Com relação aos princípios SOLID e GRASP (General Responsibility Assignment Software Principles), analise os itens a seguir:

I. São conjuntos de princípios de design usados no desenvolvimento de software orientado a aspectos e à programação funcional.
II. SOLID é focado em tornar softwares mais escaláveis, testados e reutilizáveis.
III. GRASP oferece diretrizes para atribuição de responsabilidades, auxiliando na arquitetura e comunicação de decisões de design.

Está correto o que se afirma em
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: O critério decisivo era verificar o escopo de SOLID e GRASP: o item I os associa a paradigmas que não correspondem ao enquadramento clássico cobrado, enquanto os itens II e III estão compatíveis com suas finalidades.

Tema central: SOLID e GRASP
Análise das alternativas
A
Errada
Está errada porque inclui o item I. O erro concreto de I é atribuir SOLID e GRASP ao desenvolvimento orientado a aspectos e à programação funcional, quando o enquadramento clássico cobrado para esses princípios é a orientação a objetos.
B
Errada
Está errada por dois motivos objetivos: inclui o item I, que é falso pelo erro de escopo, e exclui o item III, que é verdadeiro porque GRASP trata justamente de atribuição de responsabilidades e apoio a decisões de design.
C
Certa
A alternativa C está certa porque contém exatamente os itens II e III. O item II é compatível com a finalidade de SOLID, que busca melhorar manutenção, extensão, teste e reutilização. O item III também está correto porque GRASP fornece diretrizes para atribuição de responsabilidades no projeto.
D
Errada
Está errada porque, embora contenha o item III, também contém o item I. A presença de I invalida a alternativa, já que o problema está em deslocar SOLID e GRASP para paradigmas que não correspondem ao seu vínculo clássico de cobrança.
E
Errada
Está errada porque deixa de fora o item II. O item II não está incorreto por usar redação não canônica; ele descreve efeitos compatíveis com SOLID, como melhor testabilidade, reutilização e evolução estrutural do software.
Pegadinha da questão
A confusão real foi trocar o contexto clássico de SOLID e GRASP, que é a orientação a objetos, por orientação a aspectos e programação funcional, além de induzir desconfiança no item II por usar uma formulação ampla, mas compatível, dos objetivos de SOLID.
Dica para questões semelhantes
  • Quando a questão citar SOLID e GRASP, primeiro confira o paradigma a que estão sendo associados; o vínculo clássico de cobrança é com orientação a objetos.
  • Se a redação de um item sobre SOLID não trouxer a formulação canônica, verifique se os efeitos descritos ainda são compatíveis com manutenção, testabilidade, extensibilidade e reutilização.
  • Ao avaliar GRASP, procure a ideia de atribuição de responsabilidades como critério central de correção.

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

c

Gabarito (C)

Os princípios SOLID reúnem cinco boas práticas para projetos Orientados a Objetos - OO. Por não constar essa definição, a primeira alternativa se torna errada!

SOLID (Estrutura e Acoplamento): Foca em como escrever classes e interfaces que sejam fáceis de manter, escalar e testar. Lida muito com herança, interfaces e injeção de dependências.

GRASP (Atribuição de Responsabilidades): Foca no comportamento. Ajuda a decidir qual classe deve ter qual método, baseando-se em conceitos como Alta Coesão e Baixo Acoplamento, garantindo que cada classe só manipule as informações que ela realmente domina (Especialista na Informação).

GoF (Gang of Four): Foca em soluções prontas (templates/receitas de bolo) para problemas recorrentes de design (ex: Singleton, Factory, Observer, Strategy).

Gabarito: C

I. “usados no desenvolvimento de software orientado a aspectos e à programação funcional”

Incorreto.

SOLID e GRASP são princípios voltados principalmente para:

✔ programação orientada a objetos (OO)

❌ Não são específicos de:

programação funcional

orientação a aspectos

Clique para visualizar este comentário

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