Skip to content

Esse projeto foi feito com o propósito de estudo para exemplificar a implementação do padrão de projeto Builder pattern

Notifications You must be signed in to change notification settings

Brendon3578/java-study-articles-builder-pattern

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Articles - Estudo sobre Builder Pattern

Java

Esse projeto foi feito com o propósito de estudo para exemplificar a implementação do padrão de projeto Builder pattern para um domínio de meios de publicação de uma Editora, no qual possui os seguintes meios de publicações: Blog, Revista e Jornal.

🔮 Porquê utilizar o padrão de projeto Builder

A utilização do padrão de projeto Builder, diminui a complexidade de criar objetos, deixando o processo de instanciação mais intuitiva e clara. No qual todo o processo de instanciação de objetos é abstraído em métodos de uma classe separada Builder define os atributos do objeto em questão e ao mesmo tempo retorna a própria instância do objeto, que pode, por consequência, ter os métodos da classe builder utilizados de forma sequencial

🧱 Estrutura do projeto

A aplicação pode testada pela classe principal Main

Interfaces

Foi definido inicialmente as interfaces dentro do pacote /core:

  • IArticle: define o contrato a ser seguido por todos os meios de publicação. São implementados pelas classes: Blog, Magazine (Revista) e Newspaper (Jornal)
  • IArticleBuilder: define o contrato a ser seguido pelas classes Builder. São implementadas pelas classes Builder: BlogBuilder, MagazineBuilder e NewspaperBuilder

Classes

Todas as classes principais da regra de negócios herdam de IArticle. Que são:

As classes Builder implementam de IArticleBuilder, são usadas para abstrair toda a complexidade da criação de classes e diminuir a repetição de código para instanciar as classes e definir seus atributos. Foram definidas dentro do pacote /builder:


Observação: o projeto feito com base em um artigo do Marcio Ballem, o artigo pode ser visto clicando aqui

Feito com ☕ por Brendon Gomes

About

Esse projeto foi feito com o propósito de estudo para exemplificar a implementação do padrão de projeto Builder pattern

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages