Questão de Arquitetura de Software — Padrões de projeto (Design Patterns) — UFSM 2025
Arquitetura de Software›Padrões de projeto (Design Patterns)
Código
qg621772
Banca
UFSM
Órgão
UFSM
Ano
2025
Nível
Superior
Cargo
Professor EBTT - Área: Ciências Exatas e da Terra/Ciência da Computação/ Metodologia e Técnicas da Computação
Assinale a alternativa que indica o padrão que implementa uma estrutura de inversão de controle chamada de “o princípio de Hollywood”, que diz: “não nos chame, nós chamaremos você”.
AProxy.
BAdapter.
CTemplate Method.
DMediator.
EInterpreter.
Revelar gabarito e comentário▾
GabaritoC — Template Method.
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”.
Padrões de projeto: Template Method e o Princípio de Hollywood
Gabarito: letra C. O padrão Template Method implementa a inversão de controle conhecida como "princípio de Hollywood" ("não nos chame, nós chamaremos você"), pois define o esqueleto de um algoritmo em um método da superclasse, que invoca métodos abstratos implementados pelas subclasses. Dessa forma, é a superclasse que controla o fluxo, chamando os métodos das subclasses, e não o contrário.
A questão testa o conhecimento dos padrões comportamentais do GoF e a compreensão do conceito de inversão de controle.
Padrão
Categoria
Relação com o Princípio de Hollywood (Inversão de Controle)
Descrição
Proxy
Estrutural
❌ Não se aplica
Fornece um substituto para controlar o acesso a outro objeto
Adapter
Estrutural
❌ Não se aplica
Converte a interface de uma classe em outra esperada pelo cliente
Template Method
Comportamental
✅ Implementa o princípio
Define o esqueleto de um algoritmo na superclasse, que chama métodos das subclasses
Mediator
Comportamental
❌ Não se aplica
Encapsula a interação entre objetos, promovendo baixo acoplamento
Interpreter
Comportamental
❌ Não se aplica
Define representação para gramática e interpretador para sentenças
Padrões GoF
1Comportamentais
Template Method
Princípio de Hollywood
Superclasse chama subclasses
Mediator
Encapsula interação entre objetos
Interpreter
Gramática de linguagem
2Estruturais
Proxy
Substituto para controle de acesso
Adapter
Converte interface
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Proxy é um padrão estrutural que fornece um substituto (surrogate) para controlar o acesso a outro objeto. Não há inversão de controle no sentido do princípio de Hollywood.
Alternativa B — ❌ Incorreta
Adapter é um padrão estrutural que converte a interface de uma classe em outra interface esperada pelo cliente. Não está relacionado à inversão de controle.
Alternativa C — ✅ Correta ⟵ GABARITO
Template Method é um padrão comportamental que define o esqueleto de um algoritmo em uma operação, deixando que subclasses implementem passos específicos. A superclasse contém o template method que chama métodos abstratos ou com implementação padrão, invertendo o controle: a superclasse (o framework) chama os métodos das subclasses, materializando o princípio de Hollywood.
Alternativa D — ❌ Incorreta
Mediator é um padrão comportamental que define um objeto que encapsula a interação entre um conjunto de objetos, promovendo baixo acoplamento. Não implementa inversão de controle no sentido do template method.
Alternativa E — ❌ Incorreta
Interpreter é um padrão comportamental que define uma representação para a gramática de uma linguagem e um interpretador que usa essa representação para interpretar sentenças. Não se aplica ao princípio de Hollywood.
PEGA ESSA DICA!
O princípio de Hollywood está diretamente associado ao Template Method. Em frameworks, a classe base (abstrata) chama os métodos das subclasses – o oposto do fluxo tradicional. Para fixar: lembre-se de que no Template Method o "quem chama" é a superclasse (o esqueleto do algoritmo).