🌍 Overview | Visão Geral
This release introduces a complete architectural restructuring, transforming a monolithic script into a modular structure following SOLID principles and design patterns.
Esta release introduz uma reestruturação completa da arquitetura da aplicação, transformando um script monolítico em uma estrutura modular seguindo princípios SOLID e padrões de projeto.
🏗 Architectural Improvements | Melhorias na Arquitetura
1. Reorganized Directory Structure | Estrutura de Diretórios Reorganizada
app/
├── controllers/ # Request handling logic | Lógica de tratamento de requisições
├── models/ # Data models and schemas | Modelos de dados e schemas
├── routers/ # Route definitions | Definição de rotas
├── services/ # Business logic | Lógica de negócio
├── utils/ # Helper utilities | Utilitários e ferramentas
└── views/ # Response rendering | Renderização de respostas
2. Component Standardization | Padronização de Componentes
- Controllers: Introduced
BaseControllerfor response standardization
Introdução deBaseControllerpara padronização de respostas - Services: Business logic separation (e.g.
TrackService)
Separação da lógica de negócio (ex:TrackService) - Routers: Modular routing system with
Routerclass
Implementação de sistema de roteamento modular com a classeRouter
3. Dependency Management | Gestão de Dependências
- Centralized configuration via
AppFactory
Configuração centralizada viaAppFactory - Dependency injection in services (e.g.
EmailReporterreceivesEmailSender)
Injeção de dependências nos serviços (ex:EmailReporterrecebeEmailSender)
🛠 New Technical Features | Novos Recursos Técnicos
1. Enhanced Tracking System | Sistema de Rastreamento Aprimorado
- Thread-safe
VisitTrackerwith:
ClasseVisitTrackercom:Locksynchronization
Thread-safe usandoLock- Daily data reset methods
Métodos para reset diário de dados
2. Report Scheduler | Agendador de Relatórios
- Precise next-report time calculation
Cálculo preciso do tempo até o próximo relatório - Robust error handling
Tratamento de erros robusto
3. Modular Email System | Sistema de E-mails Modular
| Component | Functionality | Funcionalidade |
|---|---|---|
EmailSender |
Pure SMTP logic | Lógica SMTP pura |
EmailNotificator |
Env var config | Configuração via env vars |
EmailReporter |
Report composition | Composição do relatório |
VisitReportRenderer |
HTML generation | Geração do HTML |
⚠️ Breaking Changes | Mudanças Incompatíveis
- Entry point changed from
app.pytorun.py
Arquivo de entrada mudou deapp.pypararun.py - New required
AppFactoryconfiguration
Estrutura de configuração agora viaAppFactory - Simplified to single
/endpoint
Endpoint único simplificado para apenas/
📈 Benefits | Benefícios
| English | Português |
|---|---|
| ✔ Better maintainability | ✔ Melhor manutenibilidade |
| ✔ Improved testability | ✔ Maior testabilidade |
| ✔ Enhanced extensibility | ✔ Melhor extensibilidade |
| ✔ Robust error handling | ✔ Tratamento de erros robusto |
For questions: ericshantos13@gmail.com
Para dúvidas: ericshantos13@gmail.com