Questão nº 36
Questão de Tecnologia da Informação · FCC ALAP 2019 (nº 36)
Sobre a lista de design patterns no padrão GoF, é correto afirmar:
- ADecorator é um padrão comportamental que categoriza um objeto para fornecer novos comportamentos.
- BVisitor é um padrão comportamental que encapsula uma solicitação como um objeto.
- CAbstract Factory é um padrão estrutural que permite criar novas instâncias simplesmente copiando instâncias existentes.
- DIterator é um padrão comportamental que fornece uma maneira de acessar sequencialmente uma coleção de objetos sem expor a sua implementação. (alternativa correta)
- EState é um padrão criacional que centraliza operações complexas de comunicação e controle entre objetos relacionados.
Resposta comentada
Gabarito Alternativa D
Padrões de Projeto (Design Patterns GoF) são soluções genéricas e reutilizáveis para problemas comuns de design de software, divididos em três categorias: Criacionais (para criação de objetos), Estruturais (para composição de classes e objetos) e Comportamentais (para comunicação e responsabilidades entre objetos).
(A) Incorreta: Decorator é um padrão estrutural, não comportamental. Ele anexa responsabilidades adicionais a um objeto dinamicamente, "decorando-o", e não categoriza um objeto.
(B) Incorreta: Visitor é um padrão comportamental, mas a descrição "encapsula uma solicitação como um objeto" pertence ao padrão Command. Esta é a armadilha da banca: a categoria está correta, mas a descrição é de outro padrão comportamental.
(C) Incorreta: Abstract Factory é um padrão criacional, não estrutural. A descrição "permite criar novas instâncias simplesmente copiando instâncias existentes" refere-se ao padrão Prototype.
(D) Correta: Iterator é um padrão comportamental que, de fato, fornece uma maneira de acessar sequencialmente os elementos de uma coleção sem expor a sua representação interna.
(E) Incorreta: State é um padrão comportamental, não criacional. A descrição "centraliza operações complexas de comunicação e controle entre objetos relacionados" pertence ao padrão Mediator.
Fonte: FCC ALAP 2019 Analista Legislativo - Desenvolvedor de Sistemas (Caderno Tipo 001). Reproduzida para fins de estudo.