são modelos para solucionar problemas
gerais de projeto em um contexto particular .
quatro engenheiros de software, conhecidos como The
Gang of Four (GOF), resolveram compilar bibliotecas de
soluções para problemas comuns de codificação e
lançaram um livro com 23 Padrões de Projeto de Software.
Padrões GOF somente com OO! Padrões de Projeto, em
geral, podem usar qualquer paradigma ou linguagem!
Vantagens
Aprender com a experiência de outros, identificando
problemas comuns de engenharia de software e
utilizando soluções testadas e bem documentadas.
Utilizar soluções com nomes que facilitam a
comunicação, compreensão e documentação.
Facilitam o reúso de soluções
arquiteturais bem sucedidas.
Desenvolver softwares de melhor qualidade.
Padrões capturam a estrutura estática e a
colaboração dinâmica entre objetos
participantes no projeto de sistemas.
Utilizam polimorfismo, herança, modularidade,
composição, abstração para construir código reutilizável,
eficiente, de alta coesão e baixo acoplamento.
Cada padrão de projeto é organizado segundo quatro
elementos: Nome, Problema, Solução e Consequências.
A fábrica (Factory Method) abstrata (Abstract
Factory) constrói (Builder) um protótipo
(Prototype) único (Singleton).
A ponte (Bridge) adaptada (Adapter) é composta
(Composite) de decorações (Decorator) na fachada
(Façade) para o peso-mosca (Flyweight) se aproximar
(Proxy).
E não tem frase para o último? Não, senão
é criacional ou estrutural, é comportamental.