Considere os seguintes objetivos de padrões de projeto. 1. S...
Considere os seguintes objetivos de padrões de projeto.
1. Separa a construção de um objeto complexo da sua representação, de forma que o mesmo processo de construção possa criar diferentes representações, ou seja, serve para encapsular a construção de um produto e permitir que ele seja construído em etapas.
2. Atribui responsabilidades adicionais a um objeto dinamicamente. Ele fornece uma alternativa flexível a subclasses para a extensão da funcionalidade, ou seja, envelopa um objeto para fornecer novos comportamentos.
3. Usa compartilhamento para dar suporte a vários objetos de forma eficiente, ou seja, permite que uma instância de uma classe possa ser usada para fornecer muitas “instâncias virtuais”.
4. Torna possível salvar o estado de um objeto de modo que o mesmo possa ser restaurado, ou seja, permite restaurar um objeto a um dos seus estados prévios, por exemplo, quando o usuário seleciona um “desfazer”.
Correspondem, correta e respectivamente, aos objetivos de padrões de projeto: