Comparação horizontal de 7 modos de projeto estrutural

Comparação horizontal de 7 modos de projeto estrutural


A principal função do padrão de projeto estrutural é combinar várias classes ou objetos para tornar suas funções mais abundantes.

        Número de série                                        Nome do padrão                                Elementos constituintes efeito
1 Modelo de agência 1. Classe de tema real
(fornecer métodos de negócios)
2. Classe de agente
(chamar métodos de negócios de tema real, expandir outros métodos)
Por algum motivo, o objeto visitante não pode fazer referência ou acessar diretamente o objeto de destino, portanto, adicione um objeto proxy como intermediário.
2 Modo adaptador 1. Interface de destino
( interface de negócios esperada pelo sistema)
2. Adaptador
(componente de destino ou interface que precisa ser adaptada)
3. Adaptador
(referencie o adaptador de destino no construtor, defina o método de interface de negócios e chame o apropriado (Método de montador)
Classes ou objetos que não podem funcionar juntos devido a interfaces incompatíveis podem funcionar juntos por meio da conversão do adaptador.
3 Modo Ponte 1. Funções abstratas
(incluindo referências a objetos realizados, métodos de chamada de funções realizadas)
2. Funções realizadas
(métodos de negócios para realizar funções realizadas)
Quando uma classe tem múltiplas dimensões que mudam independentemente, e cada dimensão precisa ser expandida
4 Padrão decorativo 1. Função do componente
(implementar interface de negócios)
2.
Função de decoração ( função de construção de referência no construtor, definir interface de negócios, chamar interface de negócios da função de construção e chamar funções adicionais ao mesmo tempo)
Precisa adicionar dinamicamente funções adicionais ao objeto sem alterar a estrutura do objeto
5 Modo de aparência 1. Função de aparência
(referindo-se ao subsistema no construtor, fornecendo o método para os clientes chamarem e chamando o método do subsistema dentro dele)
2.
Função do subsistema (realizando a função de negócios do subsistema)
3. Função do cliente
(criando uma instância da função de aparência, Chame seu método)
Fornece acesso unificado a vários subsistemas
6 Modelo Flyweight 1. Função Flyweight
(fornecendo métodos de negócios e obtendo estado externo por meio de parâmetros)
2. Função não compartilhada
(recebendo estado externo no construtor, e você pode definir e obter estado externo)
3. Função Flyweight Factory
(gerenciamento de funções shareware, Quando um cliente solicita um objeto shareware, primeiro verifique se ele existe no sistema, retorne diretamente se existir e crie um novo objeto shareware se não existir)
Aplicado a cenas onde há um grande número de objetos idênticos ou semelhantes no sistema que precisam ser criados
7 Modo de combinação 1. Componente
folha (objeto de nó folha, sem nós filhos)
2. Componente de
ramificação (objeto de nó de ramificação, com nós filhos. Armazenamento e gerenciamento de componentes filhos, geralmente incluindo add \ remove \ getChild e outros métodos)
Usado para expressar a relação "parte-todo", de modo que os usuários tenham acesso consistente a objetos únicos e objetos combinados.

Acho que você gosta

Origin blog.csdn.net/weixin_44135121/article/details/108212748
Recomendado
Clasificación