001 – Padrão de Projeto de Software – Curso de Design Patterns

Playlist do Curso de Padrão de Projeto de Software (Design Patterns)

Padrão de projeto de software

Vamos falar sobre os padrões de projetos de softwares (design patterns), conceito e tipos.

Em Engenharia de Software, um padrão de desenho (pt) ou padrão de projeto (pt-BR) (do inglês design pattern) é uma solução geral para um problema que ocorre com frequência dentro de um determinado contexto no projeto de software. Um padrão de projeto não é um projeto finalizado que pode ser diretamente transformado em código fonte ou de máquina, ele é uma descrição ou modelo (template) de como resolver um problema que pode ser usado em muitas situações diferentes. Padrões são melhores práticas formalizadas que o programador pode usar para resolver problemas comuns quando projetar uma aplicação ou sistema. Padrões de projeto orientados a objeto normalmente mostram relacionamentos e interações entre classes ou objetos, sem especificar as classes ou objetos da aplicação final que estão envolvidas. Padrões que implicam orientação a objetos ou estado mutável mais geral, não são tão aplicáveis em linguagens de programação funcional.

Padrões de projeto residem no domínio de módulos e interconexões. Em um nível mais alto há padrões arquiteturais que são maiores em escopo, usualmente descrevendo um padrão global seguido por um sistema inteiro.[1]

As características obrigatórias que devem ser atendidas por um padrão de projeto é composto basicamente por 4 (quatro) elementos que são:

Nome do padrão;
Problema a ser resolvido;
Solução dada pelo padrão; e
Consequências.
Os padrões de projeto:

visam facilitar a reutilização de soluções de desenho – isto é, soluções na fase de projeto do software – e
estabelecem um vocabulário comum de desenho, facilitando comunicação, documentação e aprendizado dos sistemas de software.