Pergunta de entrevista da empresa IMS

Talk about different design patterns.