O que é design patterns e quais tipos são mais comuns?

Feb 3 / Paulo Oliveira
Em toda profissão desenvolvemos soluções práticas que podem ser aplicadas em problemas comuns à operação. Os design patterns, ou padrões de projetos, são exatamente isso para programadores!

Quando nos deparamos mais de uma vez, em projetos diferentes, com o mesmo erro criamos soluções que possam ser usadas de diferentes maneiras, mas com resultados semelhantes para contornar a situação. 

Neste artigo, preparado pela a Escola Linux,você aprende sobre a origem dos design patterns, o que são e quais os tipos mais comuns.

O que são design patterns?

Os design patterns, também chamados de padrões de projetos, buscam padronizar as soluções de problemas frequentes que surgem na hora de desenvolver um programa.

Estes problemas não são gerados por erros ou incompetência do desenvolvedor, na verdade eles são como becos sem saídas comuns da profissão.

Por exemplo, imagine um caixa de supermercado passando diversos itens de uma grande compra, quando o cliente decide retirar apenas um item. Não foi um erro do operador de caixa, mas é uma ação que precisa ser corrigida. Neste exemplo, a solução é a senha de acesso do gerente, que permite a alteração da lista de compras já registradas.

Para programadores, os Designs Patterns são como a última alternativa para resolver um problema cuja solução é padrão.

Quais tipos de design patterns são mais comuns?

Existem diversos tipos de padrões, como citamos acima o primeiro livro sobre o assunto, há mais de 40 anos, já trazia 253 de padrões. No entanto, separamos os tipos mais comuns da ferramenta.

Os autores do livro “design patterns: Elements of Reusable Object-Oriented Software” classificaram três tipos de design patterns: Creational (Criação), Structural (Estrutura), Behavioral (Comportamental).

Creational design patterns

Os padrões criacionais oferecem diferentes mecanismos de criação de objetos, que permitem maior flexibilidade e reutilização de código já existente.


  • Prototype;
  • Abstract Factory;
  • Factory Method;
  • Builder;
  • Singleton

Structural design patterns

Os padrões estruturais permitem montar objetos e classes em estruturas maiores, as mantendo flexíveis e eficientes.

  • Adapter;
  • Composite;
  • Decorator;
  • Bridge;
  • Flyweight;
  • Façade;
  • Proxy.

Behavioral Patterns

Padrões comportamentais foram feitos para os algoritmos e a designação de responsabilidades entre objetos.
  • Chain of Responsibility;
  • Command;
  • Interpreter;
  • Iterator;
  • Mediator;
  • Memento;
  • Observer;
  • State;
  • Strategy;
  • Template Method;
  • Visitor.

Como aprofundar os conceitos de design patterns

Para ir além dos conceitos mais básicos e aprender a aproveitar o máximo do design patterns, você precisa ler, estudar e buscar por cursos especializados.

Na Escola Linux você aprende sobre os padrões de projetos e muito mais em aulas gravadas ou ao vivo, com instrutores para diversos graus de conhecimento, assuntos de interesse da empresa e dos participantes.

Focando em uma educação que acompanhe a alta velocidade de transformação das tecnologias. Entre em contato para saber mais.

Autor do artigo

Paulo Henrique Oliveira

CEO da Linux Solutions, Networker e Millionaire Givers na BNI Brasil - Fiduciam RJ
Sobre mim
Mestre e Bacharel em Informática pela Universidade Federal do Rio de Janeiro. Graduado em Administração de Empresas pela Universidade Ibmec, com ampla experiência empresarial e liderança. Especialista em Linux e CEO da Linux Solutions, referência em soluções open sources para seu negócio.
Criado com