Na arquitetura e no projeto de software, a aplicação de Padrões de Projeto
(Design Patterns) é fundamental para resolver problemas recorrentes com soluções previamente
testadas e otimizadas pela engenharia. Contudo, a eficácia dessas soluções depende da escolha do
padrão correto para o cenário arquitetural adequado, evitando a inserção de complexidade
desnecessária no código. Relacione a Coluna 1 à Coluna 2, associando os padrões de projeto às suas
respectivas situações de aplicabilidade prática.
Coluna 1
1. Singleton.
2. Factory Method.
3. Observer.
Coluna 2
( ) Quando a mudança do estado interno de um objeto precisa ser percebida (mas com baixo
acoplamento) por outros objetos, gerando um gatilho para, por exemplo, criação de outros
objetos, execução de funções ou recuperação de uma instância única de um objeto, entre outros.
( ) Quando for necessário que uma única instância possa ser visível e acessível globalmente, não
sendo possível instanciar duas ou mais instâncias distintas da mesma classe.
( ) Quando uma classe quer delegar a criação de objetos para suas subclasses, encapsulando o
conhecimento sobre as subclasses criadas em uma única superclasse.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é: