O que é Design Pattern?

Já se perguntou o que padrões de design são? Neste artigo, vou explicar por que os padrões de design são importantes, quando e por que eles devem ser usados.

O que são Design Patterns?

Padrões de design são soluções reutilizáveis, otimizadas para os problemas de programação que nos deparamos todos os dias. Um padrão de design não é uma classe ou uma biblioteca que podemos simplesmente ligar o nosso sistema; é muito mais do que isso. É um modelo que deve ser aplicada na situação correta. Também não é específico do idioma. Um bom design pattern deve ser implementável em praticamente todas as linguagens de desenvolvimento. É importantíssimo lembrar que qualquer design pattern pode ser uma espada de dois gumes, ou seja,  se implementado no lugar errado ou da forma errada, pode ser desastroso e criar mais problemas do que solucionar. No entanto, implementado no lugar certo, na hora certa, pode ser a salvação do seu fonte.

Existem três tipos básicos de padrões de design:

  1. Estruturais: geralmente lidar com relações entre entidades, tornando mais fácil para essas entidades a trabalhar juntos.
  2. Criação: fornecem mecanismos de instanciação, tornando mais fácil para criar objetos de forma que se adapte a situação.
  3. Comportamentais: são usados nas comunicações entre entidades e torná-lo mais fácil e mais flexível para estas entidades para se comunicar.

Por que devemos usá-los?
Padrões de design são, por princípio, bem-pensado soluções para problemas de programação. Muitos programadores têm encontrado estes problemas antes e tem usado essas soluções. Se você encontrar esses problemas, por que reinventar a roda, quando você pode usar uma resposta já comprovada?

The following two tabs change content below.
Breno RdV
Ex-Psicólogo, com quase uma década de experiência em Recursos Humanos e Gestão de Pessoas, atual desenvolvedor e Analista de Sistemas, trabalhando com PowerBuilder, C#, PowerShell e expandindo horizontes para Python, Xamarin, PHP, Angular e (por que não?) Unity.

Comments

comments

Posted in Conhecimento Técnico, Dev and tagged , , .

2 Comments

  1. Pingback: Singleton – Raccoon Ninja

  2. Pingback: Strategy Pattern – Raccoon Ninja

Comments are closed.