|

O que são design patterns e quais tipos existem?

Quando começamos a trabalhar com programação a nossa principal preocupação é fazer aquele software funcionar né?

Mas conforme a gente avança e vai se turnando mais maduro na carreira, percebemos que as vezes é necessário que aquele programa que você seja de mais fácil manutenção. Especialmente quando estamos falando de times desenvolvendo o mesmo software.

E é pra isso que os design patterns servem. Mas calma lá, vamos do começo.

O que são Design Patterns?

A primeira coisa que você precisa entender é que um design pattern não é um bloco de código que você coloca no seu programa e pronto, tudo começa a funcionar.

Os design patterns são formas de resolver problemas conhecidos. Isto é, muitas pessoas já passaram por este problema então já existe uma solução conhecida para ele.

Os princípios S.O.L.I.D são design patterns?

Não. Muito embora os princípios S.O.L.I.D sejam usados em quase todos os patterns para garantir a consistência do que está sendo codado. Por exemplo o princípio da inversão de dependência, que diz que você deve depender de uma interface e não de uma implementação.

Se você ainda não sabe o que são princípios S.O.L.I.D. baixe meu ebook gratuito com exemplos práticos pra você conseguir entender.

Quais os tipos de design patterns existem?

Existem três tipos de design patterns: Os Creational Patterns, os Structural Patterns e os Behavioural Patterns.

Creational Patterns

Os famosos patterns de criação. Mas você pode se perguntar se tem a ver com a criação de um projeto. E a resposta é não, são sobre criação de objetos.

O exemplo mais clássico aqui é utilizando o pattern Singleton quando queremos ter apenas uma instância de conexão com banco de dados no projeto todo.

Exemplo de Creational Patterns: Abstract Factory, Builder, Factory Method, Prototype

Structural Patterns

Aqui o negocio é um pouco diferente, os patterns de estrutura são usados para definir como as camadas da sua aplicação se comunicam.

Exemplos de Structural Patterns: Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy

Behavioural Patterns

Esses são os mais legais na minha opinião. Aqui estamos falando de padrões de comportamento da sua aplicação.

Digamos que você tenha uma balança de carros e você precise executar uma lógica diferente caso o carro seja mais pesado que 3mil kilos, você poderia utilizar o pattern Strategy.

Exemplos de Behavioural Patterns: Chain of Responsability, Command, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor

Conclusão

Existem muitos padrões a serem seguidos para inúmeros problemas que podemos passar no dia a dia, mas não vai ser lendo apenas um livro ou alguns artigos que vamos aprender a utilizar os patterns por completo.

Utilizar design patterns exige muita prática, pra primeiro você conseguir identificar a necessidade de utilizar.

Uma boa maneira de práticar é criando projetos pessoais e se forçando a lidar com algumas situações e aí sim, resolvendo via patterns.

Se esse post te ajudou a entender um pouco melhor o que são Design Patterns, compartilha com um amigo que também precisa aprender sobre Design Patterns e caso tenha alguma dúvida, deixa aqui nos comentários.

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *