Padrões de Projeto: Exemplos práticos

Neste artigo veremos quais são os padrões estruturais; como implementá-los em Delphi e como utilizá-los em nosso dia a dia através de exemplos práticos.

 Esse artigo faz parte da revista Clube Delphi Magazine edição 104. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler essa revista em PDF.

Boas Práticas

Padrões de Projeto – Parte 2

Exemplos práticos

 

 

Neste artigo veremos

·Quais são os padrões estruturais;

·Como implementá-los em Delphi;

·Como utilizá-los em nosso dia a dia através de exemplos práticos.

Qual a finalidade?

·Mostrar o uso adequado de padrões de projeto em uma aplicação Delphi.

Quais situações utilizam esses recursos?

·No desenvolvimento de sistemas em geral.

 

Resumo do DevMan

Os padrões de projeto são soluções para problemas recorrentes que surgem no desenvolvimento de sistemas. Foram inicialmente catalogados pela GoF (Gang of Four). Quatro autores, Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides, que lançaram o livro mais famoso sobre o assunto: Design Patterns: Elements of Reusable Obejct-Oriented Software. Considerados como boa prática entre os desenvolvedores, veremos como aplicar os padrões estruturais em Delphi, em situações reais que podem acontecer no dia a dia do trabalho.

 

Na primeira parte desta série de artigos sobre Design Patterns, vimos como aplicar os padrões criacionais. Comentei que existem diversos padrões de projeto que podem ser utilizados para ajudar no desenvolvimento e todo o qualquer sistema. Comentei também que os padrões de projeto são, na verdade, conjuntos de soluções para problemas conhecidos e que em conjunto com a orientação a objetos podem fornecer recursos suficientes para a resolução de praticamente qualquer problema computacional. Neste artigo daremos continuidade ao assunto abordando os padrões estruturais que são compostos pelos seguintes:

 

·Adapter;

·Bridge;

·Composite;

·Decorator;

·Façade;

·Flyweight;

·Proxy.

 

Padrão Adapter

Em sua definição o padrão Adapter possui a tarefa de converter a interface de uma classe para outra interface que uma classe cliente espera, permitindo que classes trabalhem juntas, mesmo possuindo interfaces diferentes. O próprio Delphi aplica automaticamente o padrão Adapter para nós. Em outras palavras algumas vezes, uma classe projetada para ser reusada não o é porque sua interface não combina com a interface requisitada por uma aplicação de um domínio específico, um exemplo disso: uma classe TextView existente poderia ser reusada através de uma interface TextShape em um editor de desenhos para desenhar e organizar elementos gráficos (linhas, polígonos, etc.), tratando o texto como mais um tipo de elemento gráfico (Figura 1). 

 

" [...] continue lendo...

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados