Pular para o conteúdo principal

Questão de Arquitetura de Software — Padrões de projeto (Design Patterns) — FUNDATEC 2023

Arquitetura de SoftwarePadrões de projeto (Design Patterns)
Código
qq897258
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Teste de Software e Garantia da Qualidade
Os princípios GRASP (General Responsibility Assignment Software Patterns) definem diretrizes para atribuições de responsabilidades às classes e objetos durante a construção de Sistemas Orientados a Objetos. Os nove diferentes princípios apresentados em GRASP são: Criador, Especialista de informação, Baixo acoplamento, Controlador, Alta coesão e, EXCETO:
  1. APolimorfismo.
  2. BFabricação pura.
  3. CIndireção.
  4. DVariações protegidas.
  5. ESegregação de interface.
Revelar gabarito e comentário

GabaritoE — Segregação de interface.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

GRASP (General Responsibility Assignment Software Patterns)

Gabarito: letra E (Segregação de interface). A Segregação de Interface (Interface Segregation Principle – ISP) é um dos cinco princípios SOLID, não faz parte dos nove padrões GRASP. Os princípios GRASP são: Criador, Especialista de Informação, Baixo Acoplamento, Controlador, Alta Coesão, Polimorfismo, Fabricação Pura, Indireção e Variações Protegidas.

A banca cobra o conhecimento da lista completa dos padrões GRASP. O contexto fornecido (Wikipédia) confirma os padrões básicos e avançados exatamente como listados. A única alternativa que não consta é "Segregação de interface", que pertence ao conjunto SOLID (Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, Dependency Inversion).

Padrão GRASP

Descrição

Categoria

Pertence ao GRASP?

Criador

Define quem deve criar um objeto

Básico

Sim

Especialista de Informação

Atribui responsabilidade a quem possui a informação necessária

Básico

Sim

Baixo Acoplamento

Minimiza dependências entre classes

Básico

Sim

Controlador

Gerencia eventos do sistema

Básico

Sim

Alta Coesão

Mantém responsabilidades focadas e relacionadas

Básico

Sim

Polimorfismo

Permite que objetos diferentes respondam à mesma mensagem

Avançado

Sim

Fabricação Pura

Cria classe artificial para reduzir acoplamento

Avançado

Sim

Indireção

Insere intermediário para mediar comunicação

Avançado

Sim

Variações Protegidas

Encapsula pontos de variação instáveis

Avançado

Sim

Segregação de Interface

Interfaces específicas são melhores que gerais

SOLID (ISP)

Não

1Básicos
Criador
Especialista de informação
Baixo acoplamento
Controlador
Alta coesão
2Avançados
Polimorfismo
Fabricação pura
Indireção
Variações protegidas
3SOLID (5 princípios)
Segregação de interface (ISP)
GRASP (9 padrões)
LEVELsoulevel.com.br
GRASP (9 padrões): Básicos (Criador, Especialista de informação, Baixo acoplamento, Controlador, Alta coesão); Avançados (Polimorfismo, Fabricação pura, Indireção, Variações protegidas); SOLID (5 princípios) (Segregação de interface (ISP))

Alternativa A — ✅ Correta (Polimorfismo)

Polimorfismo é um padrão GRASP avançado. Ele permite que objetos de tipos diferentes respondam à mesma mensagem de formas distintas, promovendo flexibilidade.

Alternativa B — ✅ Correta (Fabricação pura)

Pure Fabrication é um padrão GRASP avançado. Propõe a criação de uma classe artificial (que não representa um conceito do domínio) para manter baixo acoplamento e alta coesão.

Alternativa C — ✅ Correta (Indireção)

Indirection é um padrão GRASP avançado. Consiste em inserir um objeto intermediário para mediar a comunicação entre outros objetos, reduzindo o acoplamento direto.

Alternativa D — ✅ Correta (Variações protegidas)

Protected Variations é um padrão GRASP avançado. Visa proteger o sistema de variações em elementos instáveis, encapsulando o comportamento que pode mudar.

Alternativa E — ❌ Incorreta ⟵ GABARITO

Segregação de interface é um princípio SOLID (ISP), não um padrão GRASP. O ISP defende que interfaces específicas são melhores que uma interface geral. Por estar fora do conjunto GRASP, é a resposta pedida (EXCETO).

NÃO CAIA NESSA!

A banca mistura princípios de design: GRASP e SOLID. O candidato que não memorizou os nove GRASP pode achar que Segregação de Interface é um deles, mas é do SOLID. Memorize a lista: Criador, Expert, Baixo Acoplamento, Controlador, Alta Coesão, Polimorfismo, Pure Fabrication, Indireção, Variações Protegidas.

Gabarito: letra E — o único que não é um princípio GRASP.

Link permanente: /questoes/qq897258