Skip to content

ATCamposs/design-patterns-parte3-v2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

Padrões de projeto Parte 3: Padrões criacionais

  • Flyweight(segunda parte)

  • Factory Method

    • Quando temos uma classe que, além de realizar uma ação, cria um dos objetos necessários para essa ação acontecer, e dependendo da implementação da classe, esse objeto pode ser de tipos diferentes, dizemos que temos um método que fabrica um objeto, ou seja, um Factory Method.
    • O Factory Method é um padrão criacional de projeto que fornece uma interface para criar objetos em uma superclasse, mas permite que as subclasses alterem o tipo de objetos que serão criados.
    • https://refactoring.guru/pt-br/design-patterns/factory-method
  • Abstract Factory

    • Se em algum momento tivermos objetos fortemente relacionados em nosso sistema, podemos separar a criação deles em uma única classe, para garantir que eles sejam criados sempre em conjunto com o seu "par" correto. Essa família de classes estendem o que é conhecida como Abstract Factory, por ser uma fábrica abstrata, que pode criar famílias de objetos, e não apenas um objeto específico.
    • O Abstract Factory é um padrão de projeto criacional que permite que você produza famílias de objetos relacionados sem ter que especificar suas classes concretas.
    • https://refactoring.guru/pt-br/design-patterns/abstract-factory
  • Builder

    • O padrão de projeto Builder é muito útil para construirmos objetos complexos, que não necessariamente conhecemos a implementação.
    • O Builder é um padrão de projeto criacional que permite a você construir objetos complexos passo a passo. O padrão permite que você produza diferentes tipos e representações de um objeto usando o mesmo código de construção.
    • https://refactoring.guru/pt-br/design-patterns/builder
    • https://wiki.c2.com/?TestDataBuilder
  • Prototype

    • Embora, nas explicações sobre o padrão Prototype, uma interface seja citada com um método clone(), por exemplo, vimos, com o exemplo do PHP, que uma interface nem sempre se faz necessária.
    • O Prototype é um padrão de projeto criacional que permite copiar objetos existentes sem fazer seu código ficar dependente de suas classes.
    • https://refactoring.guru/pt-br/design-patterns/prototype
  • Singleton

    • Embora tenhamos implementado de forma válida o padrão Singleton, em PHP normalmente seu uso não é realmente necessário, devido à natureza do PHP.
    • O Singleton é um padrão de projeto criacional que permite a você garantir que uma classe tenha apenas uma instância, enquanto provê um ponto de acesso global para essa instância.
    • https://refactoring.guru/pt-br/design-patterns/singleton

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages