Definição do padrão do construtor: separe a construção de um objeto complexo de sua representação, para que o mesmo processo de construção possa criar representações diferentes.
O padrão do construtor é criar um objeto complexo passo a passo, que permite que os usuários os criem apenas especificando o tipo e o conteúdo de objetos complexos. Os usuários não conhecem os detalhes específicos da construção interna. O modo Builder é muito semelhante ao modo de fábrica abstrato.
Por que usar o modo construtor
É para dissociar o processo de construção de objetos complexos de seus componentes. Nota: é o processo de desacoplamento e componentes.
Como um objeto complexo não apenas possui muitas quantidades grandes de componentes, como carros, existem muitas partes: rodas, volante, motor e várias peças pequenas, etc. Existem muitas partes, mas é muito mais do que essas Para montar essas peças em um carro para automóveis, esse processo de montagem também é muito complicado (requer boa tecnologia de montagem), e o modelo do construtor é separar os componentes e o processo de montagem.
Como usar o modo construtor
Primeiro, vamos supor que um objeto complexo seja composto por vários componentes.
Primeiro, é necessária uma interface que define como criar vários componentes de objetos complexos:
A cópia do código é a seguinte:
Builder de interface pública {
// Crie o componente A, por exemplo, crie rodas de carro
void BuildParta ();
// Crie o componente B, como criar um volante de carro
void BuildPartB ();
// Crie o componente C, como criar um motor de carro
void BuildPartC ();
// retorna o resultado da montagem final (retorno ao último carro montado)
// O processo de montagem do produto acabado não é realizado aqui, mas é transferido para a classe Diretor abaixo.
// Isso realizará o processo de desacoplamento e componentes
Produto getResult ();
}
Use o Diretor para criar o último objeto complexo, e a interface do construtor acima encapsula como criar componentes (objetos complexos são compostos por esses componentes), ou seja, como o conteúdo do diretor é como finalmente montar os componentes em produtos acabados:
A cópia do código é a seguinte:
Diretor de classe pública {
construtor de construtores privados;
Diretor público (construtor de construtores) {
this.builder = construtor;
}
// Finalmente, o Partb Partc é usado para formar um objeto complexo
// Este é o processo de montar o volante e o motor em um carro
public void construct () {
construtor.BuildParta ();
construtor.buildPartB ();
construtor.buildPartc ();
}
}
A implementação específica do Builder ConcreteBuilder:
1. Construir ou montar componentes do produto, preenchendo o construtor de interface;
2. Defina e esclareça quais coisas específicas ele deseja criar;
3. Forneça uma interface que possa reagir o produto.
A cópia do código é a seguinte:
classe pública ConcreteBuilder implementa o construtor {
Parte parta, parteb, parte;
public void BuildParta () {
// Aqui está o código específico de como construir partidas
};
public void BuildPartB () {
// Aqui está o código específico de como construir parte
};
public void BuildPartC () {
// Aqui está o código específico de como construir parte
};
produto público getResult () {
// retorna ao resultado da montagem final
};
}
Objeto complexo: Produto:
A cópia do código é a seguinte:
Produto de interface pública {}
Componentes de objetos complexos:
A cópia do código é a seguinte:
interface pública parte {}
Vamos ver como chamar o modo Builder:
A cópia do código é a seguinte:
Builder de concretebuilder = new concreteBuilder ();
Diretor Diretor = novo diretor (construtor);
Diretor.Construct ();
Produto Produto = Builder.getResult ();
Aplicativo do modo construtor
No uso real de Java, geralmente usamos o conceito de "pool".
"Pool" é na verdade um pedaço de memória. O uso da memória será melhorado. Modifique a classe Diretor no modo Builder para diagnosticar qual componente o "membro da quebra" está quebrado e, em seguida, repare esse componente.