Skip to content

pauloalvis/Delphi-Design-Patterns

Repository files navigation

🏛️ Delphi Design Patterns & Clean Code

Delphi Version License Status

Um repositório de estudos práticos aplicando Design Patterns (GoF) e princípios de Clean Code em Delphi, com foco em resolver problemas reais de sistemas legados.


🎯 Objetivo

O objetivo deste repositório é demonstrar como sair do "código espaguete" (comum em sistemas legados) e migrar para uma arquitetura orientada a objetos, testável e desacoplada.

Cada pasta dentro de src representa um padrão de projeto aplicado a um cenário do mundo real.


📚 Padrões Implementados

Categoria Padrão Descrição Status
Behavioral Strategy Cálculo de Fretes (Sedex/PAC) sem IFs ✅ Concluído
Behavioral Observer Desacoplamento de notificações (Loja/Clientes) via Publish-Subscribe ✅ Concluído
Creational Factory Method Resolve o "Dilema da Criação" removendo a instanciação do Form ✅ Concluído
Structural Facade Simplificação de Checkout (Estoque, Financeiro e NF) via interface única ✅ Concluído

🛠️ Tecnologias e Compatibilidade

O projeto foi desenvolvido utilizando Delphi 12 (Athens), mas o código-fonte (.pas) é compatível com versões anteriores.

  • Linguagem: Object Pascal (Delphi).
  • Compatibilidade: Testado no Delphi 12, mas compatível com Delphi Berlin, Tokyo, Rio, Sydney, Alexandria e anteriores (que suportem Generics/Interfaces).
  • Testes: DUnitX (Recomendado para versões XE ou superiores).

Dica para versões antigas: Se você usa uma versão muito antiga (ex: Delphi 7), basta criar um novo projeto e adicionar as units manualmente. A lógica dos padrões funciona perfeitamente, bastando ajustar a sintaxe de Generics se necessário.


🚀 Como Executar

  1. Clone o repositório:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages