Design Patterns

Design Patterns for Software Development

[Delphi] Design Patterns GRASP - Creator
08/04/2019

[Delphi] Design Patterns GRASP – Creator

Olá, pessoal, como vão? Sabemos que, em uma arquitetura orientada a objetos, a criação (ou instanciação) de objetos é uma das atividades mais comuns, além de ser bastante frequente. Porém, embora seja tão trivial, muitas vezes criamos estes objetos em classes erradas e não sabemos! O propósito do Design Pattern Creator é nos ajudar a identificar as classes devidamente responsáveis pela criação de cada objeto. Acompanhe!

Continue reading...
[Delphi] Design Patterns GoF - Retrospectiva
05/12/2017

[Delphi] Design Patterns GoF – Retrospectiva

Olá, leitores! Durante 2016 e 2017, abordei os 23 Design Patterns do Gang of Four (GoF) apresentando exemplos desenvolvidos com Delphi. Para facilitar a navegação entre os artigos e também construir uma base de conhecimento sobre o assunto, preparei uma retrospectiva dos artigos, agrupando-os de acordo com a família dos padrões de projeto. Para cada um deles, há uma breve descrição, links para download dos projetos de exemplos e links dos repositórios no GitHub!

Continue reading...
[Delphi] Design Patterns - Template Method
11/09/2017

[Delphi] Design Patterns GoF – Template Method

Saudações, programadores! Estou certo de que, em algum momento (ou vários deles), você já trabalhou com herança de classes no desenvolvimento de software. Trata-se de um recurso valiosíssimo da Orientação a Objetos que contribui para uma arquitetura de fácil manutenção através do reaproveitamento de código. O padrão de projeto Template Method está intimamente associado a este conceito. Confira!

Continue reading...
[Delphi] Design Patterns - Strategy
28/08/2017

[Delphi] Design Patterns GoF – Strategy

Olá, leitores do Delphi! O 21º artigo da série sobre Design Patterns refere-se ao padrão de projeto Strategy. A proposta deste padrão, apesar de simples, é bastante conveniente para situações em que é necessário alterar o comportamento de um mesmo objeto em tempo de execução, adquirindo uma nova “estratégia” para obter um resultado. Não ficou muito claro? Acompanhe o artigo para conhecê-lo melhor!

Continue reading...
André Celestino