Projeto 16: Projeto Integrador: Arquitetura Orientada a Padrões GoF 🏆
Escopo do Projeto
Objetivo: Projetar e implementar um ecossistema completo de software integrando de forma harmônica pelo menos quatro padrões GoF (Criacional, Estrutural e Comportamental) em um sistema de e-commerce ou financeiro autônomo.
🎯 1. Contexto & Desafio Prático
Este projeto integrador consolida todos os conceitos da disciplina. Você conceberá a arquitetura de um Gateway de Pagamentos e Faturamento corporativo que utiliza Factory para criação de pagadores, Decorator para cálculo de taxas e logs, Strategy para precificação dinâmica e Observer para despacho de webhooks assíncronos.
📋 2. Requisitos Técnicos Obrigatórios
- R1 (Integração de 4 Padrões GoF): Conectar no mínimo 4 padrões: 1 Criacional (Factory/Builder), 1 Estrutural (Decorator/Adapter/Facade) e 2 Comportamentais (Strategy/Observer/Command).
- R2 (Diagrama de Classes UML): Modelar a arquitetura completa em diagrama de classes UML formal destacando os papéis de cada padrão.
- R3 (Inversão de Dependências): Todo o sistema deve utilizar injeção de dependências desacoplada sem referências a classes concretas no núcleo.
- R4 (Suíte Completa de Testes): Implementar testes unitários demonstrando o funcionamento de ponta a ponta do fluxo integrador.
📐 3. Diagrama Conceitual & Arquitetura
classDiagram
class PaymentEngine {
-factory: PaymentFactory
-strategy: PricingStrategy
-subject: EventSubject
+executeOrder(cart: Cart) OrderResult
}
class PaymentFactory { <<interface>> }
class PricingStrategy { <<interface>> }
class EventSubject { <<interface>> }
class LoggingDecorator { <<decorator>> }
PaymentEngine --> PaymentFactory : Usa
PaymentEngine --> PricingStrategy : Usa
PaymentEngine --> EventSubject : Notifica
PaymentEngine ..> LoggingDecorator : Decorado por 💻 4. Especificação Técnica & Código de Referência
// integrator_patterns_capstone.py
# Sistema Integrador de Padrões de Projeto GoF
print("=== SISTEMA INTEGRADOR GOF INICIALIZADO ===")
# 1. Criação com Factory
# 2. Precificação com Strategy
# 3. Notificação com Observer
# 4. Decoração com Decorator
print("Todos os subsistemas operacionais e integrados com sucesso!")
📦 5. Critérios de Avaliação e Entrega
- Sistema integrando comprovadamente no mínimo 4 padrões GoF.
- Diagrama UML de classes em Mermaid alinhado à implementação de código.
- Relatório sucinto justificando as escolhas arquiteturais adotadas.