🎯 Saiba o que estudar

Avançado com Treinador a partir de R$ 0,76/dia

Considere o seguinte trecho de um diagrama de classes UML q...

Próximas questões
Com base no mesmo assunto
Q4197980 Arquitetura de Software

Considere o seguinte trecho de um diagrama de classes UML que modela um sistema de administração escolar.


Imagem associada para resolução da questão


O seguinte trecho de código em VB.NET utiliza as classes do diagrama acima. As linhas de código estão numeradas para delimitá-las quando aparecem em múltiplas linhas por questões de espaço.

Imagem associada para resolução da questão


Dentre as alternativas a seguir, assinale aquela que indica o design pattern usado no código apresentado. 

Alternativas

Comentários

Veja os comentários dos nossos alunos

A) Prototype: É um padrão criacional que serve para criar novos objetos clonando uma instância existente (chamada de protótipo).

  • Como identificar no código: Você verá uma interface ou classe que possui um método explicitamente chamado ou . O código cria o novo objeto duplicando um já configurado, em vez de usar a palavra-chave do zero.

B) Singleton: É um padrão criacional que garante que uma classe tenha apenas uma única instância em todo o ciclo de vida da aplicação, fornecendo um ponto de acesso global para ela.

  • Como identificar no código: A classe terá um construtor privado (impedindo o uso de fora dela), um atributo estático privado que guarda a própria instância, e um método público estático geralmente batizado de .

C) Super factory: Este termo não é um padrão de projeto oficial catalogado pelo GoF (Gang of Four). Ele costuma ser um distrator em provas ou um apelido informal para o padrão Abstract Factory, que é uma "fábrica de fábricas" usada para criar famílias de objetos relacionados sem especificar suas classes concretas.

  • Como identificar no código: Se a questão estiver usando como sinônimo de Abstract Factory, você verá interfaces abstratas de fábricas que instanciam outras fábricas menores antes de criar os produtos finais.

D) Simple factory: Não é considerado um padrão GoF oficial, mas sim uma abordagem/idioma de programação comum. Trata-se de uma classe simples com um método que centraliza a criação de objetos baseando-se em um parâmetro (como uma string ou enum).

  • Como identificar no código: Geralmente possui uma classe chamada com um método estático contendo uma estrutura de ou que decide qual classe filha instanciar e retornar. Exemplo: .

E) Composite: É um padrão estrutural usado para representar estruturas de árvore (parte-todo). Ele permite que os clientes tratem objetos individuais (folhas) e composições de objetos (galhos) de maneira uniforme.

  • Como identificar no código: Você verá uma interface comum implementada por componentes individuais e por uma classe contêiner. Essa classe contêiner possui uma lista/coleção de objetos do mesmo tipo da interface e métodos como ou para gerenciar os filhos.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo