Questão nº 62
Questão de Tecnologia da Informação · FGV TJ-SE Servidor 2023 (nº 62)
Pedro está implementando a aplicação web SergipeJusto. Pedro aplicou em SergipeJusto o padrão de projeto comportamental que soluciona o problema de armazenar e, posteriormente, restaurar o estado interno de um objeto sem violar o seu encapsulamento.
Pedro aplicou em SergipeJusto o padrão de projeto comportamental:
- AState;
- BIterator;
- CMediator;
- DMemento; (alternativa correta)
- EPrototype.
Resposta comentada
Gabarito Alternativa D
O padrão Memento é um padrão de projeto comportamental que permite salvar o estado interno de um objeto (o "Originator") em um objeto separado (o "Memento") e, posteriormente, restaurar esse estado sem quebrar o encapsulamento do objeto original.
(A) Incorreta: O padrão State permite que um objeto altere seu comportamento quando seu estado interno muda, fazendo com que ele pareça mudar de classe; não é para salvar e restaurar estados. Armadilha da banca: O nome "State" (Estado) pode confundir, mas ele trata da mudança de comportamento baseada no estado, não da gravação e recuperação do estado.
(B) Incorreta: O padrão Iterator fornece uma forma de acessar elementos de uma coleção sequencialmente sem expor sua representação interna; não tem relação com salvar estados.
(C) Incorreta: O padrão Mediator define um objeto que encapsula como um conjunto de objetos interage, promovendo o baixo acoplamento; não é para gerenciamento de estado.
(D) Correta: O padrão Memento (Lembrança) é projetado especificamente para armazenar e restaurar o estado interno de um objeto (o Originator) de forma externa, sem expor os detalhes internos desse objeto e, assim, mantendo seu encapsulamento.
(E) Incorreta: O padrão Prototype cria novos objetos copiando um objeto existente (o protótipo); ele é para criação de objetos, não para salvar e restaurar o estado de um objeto já existente.
Fonte: FGV TJ-SE Servidor 2023 Analista Judiciário - Análise de Sistemas - Web Designer (Caderno Tipo 1). Reproduzida para fins de estudo.