Logo Passei Direto
Buscar
Você deseja criar objetos sem precisar definir classes específicas responsáveis pela instanciação dos objetos desejados, simplesmente gerando uma cópia de um objeto existente. Qual padrão de projeto você utilizaria nessa situação?
Factory Method
Singleton
Builder
Prototype
Abstract Factory
User badge image
Questões para Estudantes

há 6 meses

Respostas

User badge image

Ed Verified user icon

há 6 meses

Para a situação descrita, onde você deseja criar objetos sem precisar definir classes específicas e simplesmente gerar uma cópia de um objeto existente, o padrão de projeto mais adequado é o Prototype. Vamos analisar as opções: - Factory Method: Este padrão é usado para criar objetos, mas requer a definição de classes específicas. - Singleton: Este padrão garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a ela, não se aplica à criação de múltiplos objetos. - Builder: Este padrão é usado para construir objetos complexos passo a passo, mas não se foca na cópia de objetos existentes. - Prototype: Este padrão permite a criação de novos objetos a partir de um objeto existente (cópia), o que se encaixa perfeitamente na sua descrição. - Abstract Factory: Este padrão fornece uma interface para criar famílias de objetos relacionados, mas também requer a definição de classes específicas. Portanto, a resposta correta é: Prototype.

Essa resposta te ajudou?

0
Dislike0
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar essa resposta. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Essa pergunta também está no material:

Mais perguntas desse material

Sobre o padrão Strategy, assinale a alternativa correta:
Encapsula uma requisição em um objeto, desacoplando o objeto requisitante do objeto executor. É comumente implementada em frameworks de interface com o usuário.
Permite separar os estados de um objeto ao longo do seu ciclo de vida em classes distintas, sendo definida uma classe para cada possível estado de um objeto, o que elimina a necessidade da classe detentora dos estados, fazendo a distinção do processamento a ser realizado, por meio de estruturas switch-case ou if-then-else complexas.
Define uma família de algoritmos encapsulados em objetos, permitindo que possamos trocar o algoritmo específico sem afetar o módulo usuário desse algoritmo.
Define em uma superclasse o esqueleto de um algoritmo comum a várias subclasses, sendo que alguns passos específicos desse algoritmo podem ser implementados nas subclasses.
Permite salvar o estado interno de um objeto, sem quebrar o seu encapsulamento, permitindo que esse estado seja restaurado posteriormente nesse mesmo objeto.

"Permitir que um módulo cliente acesse sequencialmente os objetos de uma coleção, sem que esse módulo precise conhecer a representação interna dessa coleção, ou seja, a coleção pode ser uma lista encadeada, um vetor, uma árvore, ou qualquer outra estrutura". Assinale a alternativa com o nome do padrão que possui esse propósito:
Iterator
Mediator
Template Method
Observer
Command

Assinale a alternativa com o nome do padrão GRASP que recomenda que uma responsabilidade seja atribuída à classe que possua o conhecimento necessário para realizá-la, evitando, assim, a definição de classes de negócio somente com operações de acesso, isto é, operações get/set dos seus atributos.



Indireção.


Controlador.


Memento.


Fábrica.


Especialista na Informação.

Mais conteúdos dessa disciplina