Logo Passei Direto
Buscar

Design de Software

Colégio Objetivo
Agora, vamos entender o papel das classes apresentadas a seguir:
Qual é a principal solução oferecida pelo padrão Decorator nos padrões estruturais GoF?
A - Facilita a integração de classes com interfaces incompatíveis.
B - Adiciona novas funcionalidades a objetos dinamicamente sem alterar sua estrutura.
C - Simplifica a interação com subsistemas complexos através de uma interface única.
D - Separa a abstração de sua implementação, permitindo que ambas possam variar independentemente.
E - Reduz a complexidade do código ao eliminar a necessidade de subclasses para cada combinação de funcionalidades.
User badge image
Estudando com Questões

mês passado

Respostas

User badge image

Ed Verified user icon

mês passado

O padrão Decorator é um padrão estrutural que permite adicionar funcionalidades a objetos de forma dinâmica, sem a necessidade de alterar a estrutura original da classe. Ele é muito útil para estender o comportamento de objetos em tempo de execução, permitindo que você "decore" um objeto com novas funcionalidades. Analisando as alternativas: A - Facilita a integração de classes com interfaces incompatíveis. - Isso se relaciona mais ao padrão Adapter. B - Adiciona novas funcionalidades a objetos dinamicamente sem alterar sua estrutura. - Esta é a definição correta do padrão Decorator. C - Simplifica a interação com subsistemas complexos através de uma interface única. - Isso se relaciona mais ao padrão Facade. D - Separa a abstração de sua implementação, permitindo que ambas possam variar independentemente. - Isso se relaciona ao padrão Bridge. E - Reduz a complexidade do código ao eliminar a necessidade de subclasses para cada combinação de funcionalidades. - Embora isso seja uma vantagem do Decorator, a descrição não é precisa. Portanto, a alternativa correta é: B - Adiciona novas funcionalidades a objetos dinamicamente sem alterar sua estrutura.

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

Suponha que para implementar uma parte da página de compras, o código precise manipular: um objeto CarrinhoRepository para recuperar o carrinho do cliente, um objeto Carrinho para adicionar produtos ao carrinho do cliente, um objeto ProdutoRepository para recuperar produtos a serem apresentados ao cliente, um objeto ValidadorCarrinho para verificar se o carrinho atende às regras do negócio, um objeto para calcular o valor do frete até o destino definido pelo cliente, um objeto para calcular o prazo de entrega.
Assinale a alternativa que expressa a intenção do padrão de projeto Facade:
A - Fornecer uma interface para a interação com um objeto remoto, oferecendo transparência de localização, isto é, os módulos chamadores podem se comunicar com o objeto remoto como se ele estivesse rodando localmente.
B - Reduzir o acoplamento de um módulo cliente com os elementos que compõem um subsistema, fornecendo para o módulo cliente uma interface de alto nível aos serviços desse subsistema.
C - Evitar a instanciação de uma grande quantidade de objetos imutáveis, por meio de uma solução baseada em compartilhamento de objetos.
D - Representar hierarquias de composição de objetos, de forma que tanto os objetos individuais quanto os agregados possam ser gerenciados pelo mesmo conjunto de operações.
E - Desacoplar uma abstração das suas possíveis representações, permitindo que tanto a abstração quanto as suas representações possam evoluir de forma independente.

Mais conteúdos dessa disciplina