Considere:
I. Fornecer uma interface para criação de famílias de objetos relacionados ou dependentes, sem especificar suas classes concretas. Possibilitar o adiamento da instanciação para as subclasses.
II. Garantir a existência de apenas uma instância de uma classe, mantendo um ponto global de acesso ao seu objeto.
III. Possibilitar o armazenamento do estado interno de um objeto em um determinado momento, para que seja possível retorná-lo a este estado, caso necessário.
I, II e III são, respectivamente, objetivos dos design patterns intitulados:
Interpreter, Iterator e Memento.
Command, Singleton e Iterator.
Factory Method, Singleton e Memento.
Iterator, Factory Method e Flyweight.
Singleton, Flyweight e Command.
{TITLE}
{CONTENT}
{TITLE}
Aguarde, enviando solicitação...