Um Analista precisa construir uma aplicação que possui uma função da qual se conhece somente o algoritmo de execução,
sendo que o trabalho de codificação para realização da operação desta função tem que ser postergado. Ele optou pelo uso do
padrão de projeto comportamental
A
Template Method, que permite implementar as partes invariantes de um algoritmo e deixar para subclasses a
implementação da parte variante.
B
Adapter, que cria classes reutilizáveis que cooperam com classes não relacionadas ou não previstas.
C
Singleton, que possibilita o uso de uma instância estendida sem alterar o seu código.
D
Abstract Factory, que permite criar uma biblioteca de classes de produtos e revelar somente suas interfaces, não suas
implementações.
E
Factory Method, que define uma interface para criar objetos, mas deixa que as subclasses decidam que classe instanciar.