Um time de desenvolvimento está trabalhando em um
sistema financeiro que processa transações bancárias.
Para garantir que o sistema seja flexível, escalável e fácil
de manter, o time decide usar padrões de projeto. Após
uma análise cuidadosa de uma situação encontrada, eles
escolhem como solução uma combinação de dois padrões de projeto. O primeiro padrão de projeto escolhido
é usado para criar instâncias de objetos necessários para
processar diferentes tipos de transações, enquanto o segundo padrão de projeto escolhido garante que o sistema
possa tratar uma série de requisições de transações de
forma flexível e extensível.
Considerando-se o contexto descrito, quais são os dois
padrões de projeto escolhidos?