Qual o propósito desse repositório
Esse repositório tem o propósito de fornecer diversos exemplos práticos, para a comunidade Dev e demais interessados, de cada um dos 23 padrões de projetos (Design Patterns) catalogados pela GoF (Gang of Four) no livro Design Patterns Elements of Reusable Object-Oriented Software.
Sobre os exemplos
Os exemplos aqui reunidos podem ser adaptações de materiais encontrados em cursos, livros, artigos, talks, experiência profissional, dentre outros. Quando um exemplo for retirado de algum meio específico, terá recebido o devido crédito de autoria.
O que é esse repositório
Um guia de consulta com diversos exemplos aplicados para possibilitar o entendimento em variados contextos;
Para fins didáticos, os exemplos foram projetados com o objetivo de se aproximar da realidade, "injetando" algum pattern para resolução de um dado problema.
Portanto, nesse repo você poderá encontrar projetos maiores, onde o pattern é utilizado em algum trecho dele e não necessariamente encontrará somente o pattern.
Entretanto, em cada seção uma explicação sobre o Pattern utilizado e sua forma de uso, estará disponível.
O que NÃO é esse repositório
Uma referência completa e absoluta sobre Design Patterns e única fonte de resolução de um problema de Design de Código.
Existem várias abordagens possíveis e patterns diferentes que poderiam ser utilizados para resolução.
Caso queira contribuir com mais exemplos, inclusive em outras linguagens, ou caso tenha encontrado algum erro ou ponto de melhoria basta clonar o repositório e abrir um pull request ou uma issue com a proposta de inclusão/modificação.
No mais, boas vindas! Espero que acima de tudo se diverta durante o processo de consulta e aprendizagem com os exemplos.