Qual é o propósito do padrão de projeto Observer?
O padrão de projeto Observer é responsável por observar e notificar a mudança de estado entre objetos distintos através de uma dependência um-para-muitos.
Como funciona o padrão Observer?
O padrão Observer funciona como assinaturas de jornais e revistas, ou seja, temos uma editora que publica as edições e pessoas que assinam os jornais ou revistas dessa editora e sempre recebem as novas edições assim que elas são publicadas. Enquanto a pessoa é assinante ela continua recebendo as edições na sua casa.
Quando devemos aplicar o padrão Observer?
O padrão Observer pode ser usado quando uma abstração tem dois aspectos, um dependente do outro. Encapsular tais aspectos em objetos separados permite que variem e sejam reusados separadamente.
Qual o objetivo do padrão Decorator?
O padrão de projeto Decorator é um padrão estrutural que permite agregar dinamicamente responsabilidades adicionais a um objeto fornecendo assim uma alternativa flexível à utilização da herança como modo de estender funcionalidades.
Qual problema o Observer resolve?
O Observer resolve o problema de publisher-subscriber de maneira elegante através do uso de interfaces e de uma solução simples para o aumento do número de subscribers. Já o Singleton resolve, com poucas linhas de código, o problema de entidades que precisam fornecer apenas uma instância para toda a aplicação.
Qual problema o padrão Template Method resolve?
Solução: O padrão de projeto Template Method resolve o problema que enunciamos. Ele especifica como implementar o esqueleto de um algoritmo em uma classe abstrata X, mas deixando pendente alguns passos — ou métodos abstratos. Esses métodos serão implementados nas subclasses de X.
Quando devemos aplicar Strategy?
Aplicação. O padrão é aplicado em situações em que muitas classes se relacionam e diferem apenas no modo de atuação, com isso o Strategy irá configurar a classe que tenha um dentre muitos comportamentos fornecidos.
Quando usar o Design Pattern Decorator?
Quando usar o padrão Decorator?
- Para adicionar responsabilidades dinamicamente a objetos individuais e transparentemente (sem afetar outros objetos)
- Quando há responsabilidades que podem ser retiradas.
- Quando a herança geraria uma explosão de subclasses.
Quando devemos usar o padrão Decorator?
O padrão Decorator é utilizado quando precisa-se anexar responsabilidades dinamicamente sem precisar de uma grande hierarquia de subclasses.
Que problemas o padrão de Design Observer não pode resolver?
O problema Fazer com que o tipo da referência seja a classe (concreta) do Listener não funciona bem, porque: O número e tipos dos Listeners não é conhecido em tempo de compilação.
Quando devemos aplicar o padrão Template Method?
Quando usar o padrão Template Method?
- Para implementar partes invariantes de um algoritmo uma única vez e deixar subclasses implementarem o comportamento variável.
- Quando comportamento comum entre subclasses deveria ser fatorado e localizado numa classe comum para evitar duplicação. …
- Para controlar extensões de subclasses.
Qual o objetivo do padrão Template Method assinale a opção correta?
O Template Method defini o esqueleto (passos) do algoritmo em uma operação, permitindo que subclasses implementem alguns passos específicos do processamento.
Quando não devemos usar o Strategy?
As desvantagens na utilização do Padrão Strategy é a complicação que há de como os algoritmos obtêm ou recebem dados de suas classes de contexto; o cliente deve conhecer como que os Strategies diferem, antes mesmo que ele possa selecionar um mais apropriado para o contexto da aplicação; o custo da comunicação entre o …
Quando usamos padrão Strategy qual a ideia que eu pretendo com ele?
4a Questão Quando usamos padrão Strategy, qual a ideia que eu pretendo com ele? … O objetivo do padrão Strategy é definir uma família de algoritmos , encapsula cada um deles , e torna-os intercambiáveis, permitindo assim que os algoritmos variem independentemente dos clientes que os utilizam.