lazhandoff
- Active · last change 10-23-2026
- ★ 1 on GitHub
README
🚀 Engenharia Avançada de Componentes Object Pascal: A Enciclopédia Definitiva (50 Módulos)
Coleção técnica definitiva e orientada à produção para arquitetos de software e desenvolvedores sêniores que desejam dominar a engenharia, design-time, computação gráfica, criptografia, mensageria IoT e integração de inteligência artificial em Free Pascal / Lazarus 3.x+ e Embarcadero Delphi 12 Athens+ (VCL & FMX).
📚 Os Dois Livros da Obra
📘 Livro 1: Engenharia e Arquitetura Avançada de Componentes para Lazarus IDE & LCL
- Ambiente Alvo: Free Pascal 3.2.2+ e Lazarus 3.x+ (Multiplataforma: Windows, Linux e macOS).
- Foco Técnico: LCL (Lazarus Component Library), LCLIntf, IDEIntf (Prop/Component Editors, Wizards), FPC RTL, arquitetura WS (Widgetset Bridge: Win32, GTK2/GTK3, Qt5/Qt6, Cocoa), memória blindada e concorrência multithread.
- Volume Gerado:
Livro1_Lazarus_LCL_Completo.pdf(Diagramação Editorial Limpa O'Reilly / Addison-Wesley, fundo branco, blocos de código com realce tipográfico).
📕 Livro 2: Desenvolvimento Moderno de Componentes no Delphi: VCL, FireMonkey e ToolsAPI
- Ambiente Alvo: Embarcadero Delphi 12 Athens+ (12.x+) para Windows (Win32/Win64), Linux e Mobile.
- Foco Técnico: VCL moderna (Per-Monitor v2 High-DPI, VCL Styles), FireMonkey vetorial (Styled Controls, FMX GPU Canvas), ToolsAPI profunda (OTA Interfaces, IDE Notifiers), RTTI estendida, FastMM5 e concorrência paralela.
- Volume Gerado:
Livro2_Delphi_Completo.pdf(Diagramação Editorial Limpa O'Reilly / Addison-Wesley).
📑 Catálogo Técnico & Resumo Executivo dos 50 Componentes (Guia Rápido)
- Finalidade: Ficha técnica isolada contendo a tabela comparativa completa dos 50 componentes (Lazarus e Delphi), mapeamento das unidades fonte, finalidades arquiteturais, cenários reais de aplicação e guia rápido dos 50 projetos de exemplo.
- Volume Gerado:
Resumo_50_Componentes_Lazarus_Delphi.pdf(Diagramação editorial profissional em A4 Paisagem, otimizado para leitura fluida em tela e impressão de referência técnica).
🧭 Tabela Mestra dos 50 Módulos: Guia de Finalidade e Arquitetura
Abaixo está a relação analítica dos 50 módulos da obra, informando o propósito e para que serve cada componente desenvolvido:
| # | Módulo Temático | Componente (Classe) | Unidade Lazarus (FPC/LCL) | Unidade Delphi (VCL/FMX) | Para que serve (Finalidade Principal e Cenário de Aplicação) |
|---|---|---|---|---|---|
| 01 | Diagnóstico / RTTI | TLazTypeInfoInspector / TDlpTypeHierarchyInspector |
LazTypeInfoInspector.pas |
DlpTypeHierarchyInspector.pas |
Inspeciona dinamicamente em tempo de execução a árvore de herança de qualquer classe (até TObject) e extrai metadados RTTI completos (propriedades published, métodos, tipos e atributos), gerando relatórios textuais ou em Markdown para auditoria e documentação. |
| 02 | Contêineres Seguros | TLazSafeLinkedPanel / TDlpSafeLinkedContainer |
LazSafeLinkedPanel.pas |
DlpSafeLinkedContainer.pas |
Contêiner visual com gerenciamento de referências fracas para múltiplos componentes do formulário. Utiliza FreeNotification e Notification(opRemove) para anular ponteiros automaticamente quando um controle associado é destruído, eliminando 100% dos erros de Access Violation. |
| 03 | Persistência / Streaming | TLazBinaryBlobContainer / TDlpEncryptedDataStore |
LazBinaryBlobContainer.pas |
DlpEncryptedDataStore.pas |
Armazena, comprime (ZLib/Deflate) e serializa arquivos binários, imagens ou documentos diretamente dentro do arquivo de layout (.lfm / .dfm) via DefineProperties, permitindo empacotar recursos embutidos sem depender de arquivos soltos em disco. |
| 04 | Sistema / Mensageria | LazAsyncEventHook / TDlpWindowsMessageInterceptor |
LazAsyncEventHook.pas |
DlpWindowsMessageInterceptor.pas |
Intercepta mensagens de janela do SO em baixo nível (subclassing de WndProc) como movimentação, foco, redimensionamento e teclas globais, despachando eventos assíncronos desacoplados sem bloquear o loop de mensagens da interface. |
| 05 | Arquitetura de Pacotes | LazPackageRegister / DlpPackageRegister |
LazPackageRegister.pas |
DlpPackageRegister.pas |
Centraliza o registro modular de componentes e editores na Tool Palette e Object Inspector, separando rigorosamente o pacote de tempo de execução (Runtime .lpk / .dpk) do pacote de projeto (Design-time .lpk / .dpk) com ícones profissionais. |
| 06 | Design-Time / IDEIntf | TLazJsonConfigPropEditor / TDlpGradientPropEditor |
LazJsonConfigPropEditor.pas |
DlpGradientPropEditor.pas |
Estende o Object Inspector da IDE com janelas de diálogo modais interativas ([...]) e listas suspensas dinâmicas (dropdown paValueList) para edição amigável de tipos complexos, como payloads JSON e gradientes de cores. |
| 07 | Design-Time / Verbos | TLazCardViewEditor / TDlpDashboardCardEditor |
LazCardViewEditor.pas |
DlpDashboardCardEditor.pas |
Editor de componentes que injeta verbos de menu de contexto no clique direito do Form Designer da IDE ('Adicionar Item', 'Trocar Layout', 'Verificar Status') e gerencia a ação executada ao dar duplo-clique sobre o controle. |
| 08 | Wizards / ToolsAPI | TLazCleanArchFormWizard / TDlpCleanArchProjectWizard |
LazCleanArchFormWizard.pas |
DlpCleanArchProjectWizard.pas |
Assistente de projeto (Wizard) integrado à IDE que gera algoritmicamente toda a estrutura de pastas e unidades segundo a Clean Architecture (Domain, UseCases, Repositories e UI Controllers) com código limpo e desacoplado. |
| 09 | Instrumentação Leve | TLazAnalogGauge / TDlpAnalogGauge |
LazAnalogGauge.pas |
DlpAnalogGauge.pas |
Mostrador analógico circular leve (TGraphicControl sem janela de SO) de alta performance a 60 FPS com Double Buffering, agulha vetorial por trigonometria (270°), pivô metálico, zonas coloridas configuráveis e disparo de alarmes ao atingir limites. |
| 10 | Contêineres Janelados | TLazAccordionContainer / TDlpAccordionContainer |
LazAccordionContainer.pas |
DlpAccordionContainer.pas |
Painel sanfonado colapsável janelado (TWinControl) com suporte à hospedagem de filhos no designer (csAcceptsControls), animação fluida por timer sem sobrecarga em design-time, acessibilidade total via teclado (Enter/Espaço/Tab) e chevron dinâmico. |
| 11 | Navegação / Abas | TLazCustomTabBar / TDlpCustomTabBar |
LazCustomTabBar.pas |
DlpCustomTabBar.pas |
Barra de guias e abas modernas estilizadas baseadas em coleções tipadas (TCollection/TCollectionItem), com suporte a badges numéricos de notificação, botões de fechamento individual, scroll horizontal de abas e estados hover/ativo. |
| 12 | UI Moderna / High-DPI | TLazHighDpiThemedPanel / TDlpHighDpiThemedPanel |
LazHighDpiThemedPanel.pas |
DlpHighDpiThemedPanel.pas |
Painel moderno com cantos arredondados, bordas elegantes e sombreamento suave que recalcula automaticamente proporções, margens e espessuras em monitores 4K de alta densidade (Per-Monitor v2 DPI 96 até 288+). |
| 13 | Dados / TDataLink | TLazCustomDBConnector / TDlpCustomDBConnector |
LazCustomDBConnector.pas |
DlpCustomDBConnector.pas |
Componente intermediário DB-Aware que encapsula um TDataLink customizado, sincronizando automaticamente o estado de componentes gráficos com a abertura, fechamento e alteração de dados de qualquer TDataSource/TDataSet. |
| 14 | Controles de Dados | TLazDBBasicControls / TDlpDBBasicControls |
LazDBBasicControls.pas |
DlpDBBasicControls.pas |
Família de controles básicos DB-Aware (Label, Edit e CheckBox) com binding bidirecional com DataSet, validação automática de tipos, controle estrito de edição/leitura e tratamento de campos nulos. |
| 15 | Controles Avançados | TLazDBLookupTagBox / TDlpDBLookupTagBox |
LazDBLookupTagBox.pas |
DlpDBLookupTagBox.pas |
Caixa de entrada inteligente para seleção múltipla com chips visuais (tags) pesquisáveis a partir de uma tabela de lookup, permitindo adicionar/remover itens e gravando os IDs selecionados como lista ou JSON. |
| 16 | Telemetria / Banco | TLazDataConnectionMonitor / TDlpDataConnectionMonitor |
LazDataConnectionMonitor.pas |
DlpDataConnectionMonitor.pas |
Intercepta e audita em tempo real a execução de queries SQL, registrando o tempo de resposta em milissegundos, quantidade de linhas afetadas e disparando alertas para consultas lentas (slow queries). |
| 17 | Design-Time / DragDrop | TLazFieldSchemaInspector / TDlpFieldSchemaInspector |
LazFieldSchemaInspector.pas |
DlpFieldSchemaInspector.pas |
Lê o dicionário de dados de um DataSet e habilita o arrastar e soltar (drag-and-drop) de colunas diretamente para a tela, gerando automaticamente os labels e componentes de entrada configurados. |
| 18 | Geração de Telas | TLazAutoFormBuilder / TDlpAutoFormBuilder |
LazAutoFormBuilder.pas |
DlpAutoFormBuilder.pas |
Motor generativo que constrói algoritmicamente formulários inteiros em tempo de execução ou de design com base em metadados RTTI ou metadados de banco de dados, posicionando campos e botões com alinhamento perfeito. |
| 19 | Barras de Ação | TLazCRUDOperationsBar / TDlpCRUDOperationsBar |
LazCRUDOperationsBar.pas |
DlpCRUDOperationsBar.pas |
Barra de ferramentas completa para manutenção de registros (Novo, Editar, Excluir, Gravar, Cancelar, Atualizar, Buscar) que controla automaticamente o estado ativo dos botões com base no modo do DataSet. |
| 20 | Indicadores Comerciais | TLazProductStockIndicator / TDlpProductStockIndicator |
LazProductStockIndicator.pas |
DlpProductStockIndicator.pas |
Badge/card gráfico que renderiza o nível atual de estoque, ponto crítico de reposição, barra de capacidade percentual e indicadores de margem de lucro com paletas dinâmicas verde/amarelo/vermelho. |
| 21 | Concorrência / Threads | TLazAsyncTaskRunner / TDlpAsyncTaskRunner |
LazAsyncTaskRunner.pas |
DlpAsyncTaskRunner.pas |
Executor assíncrono que processa tarefas demoradas em worker threads de segundo plano com proteção de memória, cancelamento limpo e sincronização segura de resultados com a thread principal sem travar a UI. |
| 22 | Comunicação / REST | TLazRestClientBridge / TDlpRestClientBridge |
LazRestClientBridge.pas |
DlpRestClientBridge.pas |
Cliente HTTP de alta velocidade para consumo de APIs RESTful (GET, POST, PUT, DELETE, PATCH), com suporte a cabeçalhos customizados, autenticação Bearer/Basic, timeouts resilientes e conversão de JSON. |
| 23 | Hardware / Automação | TLazSerialDeviceConnector / TDlpSerialDeviceConnector |
LazSerialDeviceConnector.pas |
DlpSerialDeviceConnector.pas |
Conector de comunicação bidirecional com portas seriais (RS-232, RS-485 e USB Virtual COM), com buffer circular de alta precisão, detecção de perda de sinal e decodificação automática de pacotes de dados. |
| 24 | Qualidade / Testes | LazComponentTests / DlpComponentTests |
LazComponentTests.pas |
DlpComponentTests.pas |
Estrutura de testes unitários automatizados para validação do ciclo de vida dos componentes, prevenção de memory leaks e análise de estresse sob Heaptrc (FPC) e FastMM5 (Delphi). |
| 25 | Distribuição / OPM | LazPackageRegister / DlpPackageRegister |
LazPackageRegister.pas |
DlpPackageRegister.pas |
Mecanismo oficial de empacotamento, registro de metadados e versionamento semântico para distribuição no Online Package Manager (Lazarus) e GetIt Package Manager (Delphi). |
| 26 | Gráficos de Alta Densidade | TLazRealtimeChartEngine / TDlpRealtimeChartEngine |
LazRealtimeChartEngine.pas |
DlpRealtimeChartEngine.pas |
Motor de renderização gráfica vetorial para séries temporais contínuas, mantendo buffer circular de alta velocidade para plotar até 100.000 pontos em tempo real com auto-escala e 60 FPS estáveis. |
| 27 | Instrumentação Industrial | TLazIndustrialTankGauge / TDlpIndustrialTankGauge |
LazIndustrialTankGauge.pas |
DlpIndustrialTankGauge.pas |
Mostrador visual em forma de tanque ou silo com representação realista de fluidos, gradientes térmicos, efeito de ondas na superfície, marcadores numéricos de volume e limites sonoros/visuais de segurança. |
| 28 | Gráficos Vetoriais | TLazVectorDonutChart / TDlpVectorDonutChart |
LazVectorDonutChart.pas |
DlpVectorDonutChart.pas |
Gráfico de setores estilo Donut/Pizza com cálculo trigonométrico polar de fatias, detecção de clique na fatia individual (hit-testing preciso), realce da fatia selecionada e legendas percentuais automáticas. |
| 29 | Visualização de Dados | TLazMatrixHeatmap / TDlpMatrixHeatmap |
LazMatrixHeatmap.pas |
DlpMatrixHeatmap.pas |
Mapa de calor bidimensional matricial com interpolação contínua de paletas térmicas (azul frio até vermelho quente), suporte a grades de qualquer dimensão e exibição de tooltips com valores exatos por célula. |
| 30 | Geração de Documentos | TLazFastPdfReport / TDlpFastPdfReport |
LazFastPdfReport.pas |
DlpFastPdfReport.pas |
Gerador nativo e ultrarrápido de arquivos PDF em código Pascal puro sem depender de DLLs ou drivers externos, desenhando cabeçalhos, tabelas com quebra de página automática, fontes e linhas. |
| 31 | Pipelines de Dados | TLazDataExportPipeline / TDlpDataExportPipeline |
LazDataExportPipeline.pas |
DlpDataExportPipeline.pas |
Pipeline assíncrono de exportação em streaming para múltiplos formatos (CSV, JSON Lines e XML Spreadsheet), consumindo DataSets gigantescos sem inflar a memória RAM e emitindo progresso percentual. |
| 32 | Automação Fiscal (DF-e) | TLazFiscalXmlValidator / TDlpFiscalXmlValidator |
LazFiscalXmlValidator.pas |
DlpFiscalXmlValidator.pas |
Validador e auditor de arquivos XML fiscais brasileiros (NF-e, NFC-e, CT-e, MDF-e), validando o dígito verificador da chave de acesso de 44 dígitos (algoritmo Módulo 11) e a assinatura digital SHA-1. |
| 33 | Compressão & Segurança | TLazEncryptedZipArchive / TDlpEncryptedZipArchive |
LazEncryptedZipArchive.pas |
DlpEncryptedZipArchive.pas |
Compactação, descompactação e leitura de arquivos ZIP com criptografia de senha conforme o padrão PKWARE, cálculo automático de CRC-32 e suporte a streaming de arquivos direto na memória. |
| 34 | Segurança / JWT | TLazJwtSecurityManager / TDlpJwtSecurityManager |
LazJwtSecurityManager.pas |
DlpJwtSecurityManager.pas |
Emissor, assinador e validador de tokens de autenticação JWT (RFC 7519) com algoritmo HMAC-SHA256, verificação automática de expiração (exp), emissor (iss), claims personalizados e lista de revogação. |
| 35 | Cofre de Segredos | TLazCryptoVaultStorage / TDlpCryptoVaultStorage |
LazCryptoVaultStorage.pas |
DlpCryptoVaultStorage.pas |
Cofre em memória para armazenamento ultra-seguro de credenciais, chaves privadas e senhas de banco com criptografia dinâmica, ofuscação XOR e limpeza automática de buffers contra inspeção por dumps de RAM. |
| 36 | Segurança / RBAC | TLazSecurityRoleManager / TDlpSecurityRoleManager |
LazSecurityRoleManager.pas |
DlpSecurityRoleManager.pas |
Motor declarativo de permissões baseado em papéis (RBAC). Varre automaticamente os controles do formulário (botões, menus, abas) e ajusta propriedades Visible/Enabled conforme os privilégios do usuário ativo. |
| 37 | Auditoria / Anti-Tamper | TLazIntegrityWatchdog / TDlpIntegrityWatchdog |
LazIntegrityWatchdog.pas |
DlpIntegrityWatchdog.pas |
Auditor de integridade que calcula o checksum criptográfico SHA-256 do próprio executável em tempo de boot e compara com assinaturas esperadas, alertando ou abortando o sistema se detectar adulteração no binário. |
| 38 | Mensageria IoT (MQTT) | TLazMqttClientBridge / TDlpMqttClientBridge |
LazMqttClientBridge.pas |
DlpMqttClientBridge.pas |
Cliente MQTT 3.1.1 leve e assíncrono para publicação e subscrição de tópicos com suporte a QoS 0, 1 e 2, reconexão transparente e processamento de telemetria de sensores industriais e dispositivos embarcados. |
| 39 | Serviços / Webhooks | TLazEmbeddedWebhookServer / TDlpEmbeddedWebhookServer |
LazEmbeddedWebhookServer.pas |
DlpEmbeddedWebhookServer.pas |
Micro-servidor HTTP embutido de altíssima velocidade que escuta em uma porta TCP dedicada e recebe notificações de webhooks (JSON/POST), despachando os eventos imediatamente para o aplicativo desktop. |
| 40 | Comunicação em Tempo Real | TLazWebSocketLiveClient / TDlpWebSocketLiveClient |
LazWebSocketLiveClient.pas |
DlpWebSocketLiveClient.pas |
Cliente WebSocket de canal contínuo full-duplex (RFC 6455) com suporte a mensagens de texto e binárias, batimento de coração periódico (Ping/Pong) e reconexão automática com backoff exponencial. |
| 41 | Notificações / Cloud | TLazPushNotificationHub / TDlpPushNotificationHub |
LazPushNotificationHub.pas |
DlpPushNotificationHub.pas |
Despachante de notificações push centralizado que conecta diretamente com serviços na nuvem (Google Firebase Cloud Messaging v1 e Apple APNs), enviando alertas para smartphones e navegadores. |
| 42 | Inteligência Artificial | TLazAiPromptDispatcher / TDlpAiPromptDispatcher |
LazAiPromptDispatcher.pas |
DlpAiPromptDispatcher.pas |
Ponte de integração com modelos de linguagem (LLMs locais como Ollama/Llama e APIs como OpenAI/Gemini), suportando envio de prompts estruturados e recepção de tokens gerados em streaming direto para a tela. |
| 43 | Processamento de IA | TLazAiStructuredExtractor / TDlpAiStructuredExtractor |
LazAiStructuredExtractor.pas |
DlpAiStructuredExtractor.pas |
Parser semântico que higieniza saídas geradas por Inteligência Artificial, extraindo blocos JSON limpos, validando schemas e hidratando automaticamente classes e registros Pascal tipados. |
| 44 | Busca Vetorial / RAG | TLazVectorEmbeddingStore / TDlpVectorEmbeddingStore |
LazVectorEmbeddingStore.pas |
DlpVectorEmbeddingStore.pas |
Armazenamento em memória de vetores multidimensionais (embeddings) com cálculo ultrarrápido de Similaridade por Cosseno e busca semântica Top-K para arquiteturas de RAG (Retrieval-Augmented Generation). |
| 45 | Daemons & Serviços | TLazSystemDaemonController / TDlpSystemDaemonController |
LazSystemDaemonController.pas |
DlpSystemDaemonController.pas |
Controlador multiplataforma de serviços em segundo plano (Windows Services e Linux Daemons via Systemd), com suporte a instalação, início, parada, pausa e registro de ocorrências em log do SO. |
| 46 | Sonda de Telemetria | TLazSystemMetricsProbe / TDlpSystemMetricsProbe |
LazSystemMetricsProbe.pas |
DlpSystemMetricsProbe.pas |
Sonda que monitora em tempo real métricas de hardware e processo: percentual de uso de CPU, memória RAM alocada pelo executável, contagem de threads ativas e descritores de arquivo/handles do SO. |
| 47 | Pool de Conexões | TLazDatabaseConnectionPool / TDlpDatabaseConnectionPool |
LazDatabaseConnectionPool.pas |
DlpDatabaseConnectionPool.pas |
Gerenciador de pool de conexões com banco de dados SQL (thread-safe), mantendo conexões pré-aquecidas, reciclagem automática por inatividade e prevenção de bloqueios em acessos concorrentes multi-usuário. |
| 48 | Atualizações OTA | TLazAutoUpdateManager / TDlpAutoUpdateManager |
LazAutoUpdateManager.pas |
DlpAutoUpdateManager.pas |
Motor de atualização automática (OTA - Over-The-Air) que consulta repositórios remotos, realiza download do novo executável, verifica o hash SHA-256 e executa a troca segura com reinício automático da aplicação. |
| 49 | Micro-benchmarks | TLazCodeBenchmarkHarness / TDlpCodeBenchmarkHarness |
LazCodeBenchmarkHarness.pas |
DlpCodeBenchmarkHarness.pas |
Harness de micro-medições com precisão de nanossegundos via instruções de CPU (RDTSC / QueryPerformanceCounter), calculando média, desvio padrão e taxa de operações por segundo de trechos de código. |
| 50 | CI/CD & DevOps | LazReleasePipeline / DlpReleasePipeline |
LazReleasePipeline.pas |
DlpReleasePipeline.pas |
Pipeline automatizado de compilação headless em lote (lazbuild e msbuild), geração de pacotes binários, numeração de versão semântica e publicação automática de releases no GitHub Actions. |
🛠️ Requisitos de Sistema
- Lazarus & Free Pascal:
- Free Pascal Compiler 3.2.2 ou superior.
- Lazarus IDE 3.0, 3.2 ou 3.4+.
- Plataformas: Windows (x86_64), Linux (x86_64, aarch64), macOS.
- Embarcadero Delphi:
- Delphi 12 Athens (12.0, 12.1 ou 12.2+).
- Plataformas: Windows 32-bit e 64-bit (VCL & FMX), Linux 64-bit, Android e iOS.
- Ferramental de Compilação Editorial (Opcional):
- Pandoc 3.0+.
- Microsoft Edge ou Google Chrome (para geração de PDF headless).
📦 Como Instalar os Componentes nos IDEs
No Lazarus IDE:
- Abra o Lazarus.
- Acesse o menu Package $\rightarrow$ Open Package File (.lpk)....
- Selecione
Livro1_Lazarus_LCL/code/packages/laz_eng_components_rt.lpke clique em Compile. - Em seguida, abra
Livro1_Lazarus_LCL/code/packages/laz_eng_components_dt.lpk, clique em Compile e depois em Use $\rightarrow$ Install. - Confirme a recompilação da IDE. Após reiniciar, a paleta
'Lazarus Engenharia Avancada'estará disponível com todos os componentes registrados.
No Embarcadero Delphi 12:
- Abra o Delphi 12 Athens.
- Acesse File $\rightarrow$ Open Project... e selecione
Livro2_Delphi_VCL_FMX/code/packages/DlpComponents_RT.dpk. - No Project Manager, clique com o botão direito sobre o pacote e selecione Build (para Win32 e Win64).
- Abra o pacote de design-time
Livro2_Delphi_VCL_FMX/code/packages/DlpComponents_DT.dpk, clique com o botão direito e selecione Install. - A paleta
'Delphi Engenharia Avancada'será inserida na Tool Palette com todos os componentes prontos para uso em formulários VCL e FMX.
🖥️ Aplicativos de Demonstração Interativa (Demos em Execução)
Para experimentar imediatamente os componentes em tempo de execução sem precisar instalá-los previamente, a obra disponibiliza aplicativos completos de demonstração com interface moderna, abas temáticas e console de auditoria em tempo real:
1. Demonstração Lazarus (FPC / LCL):
- Localização do Projeto:
Livro1_Lazarus_LCL/code/demo/LazComponentsDemo.lpi(e espelhado emlazarus/demo/). - Como executar: Abra o projeto no Lazarus IDE e pressione F9, ou compile via terminal:
lazbuild Livro1_Lazarus_LCL/code/demo/LazComponentsDemo.lpi - O que a demo exibe:
- Instrumentação & Dashboards: Mostrador analógico
TLazAnalogGaugeanimado a 60 FPS com Double Buffering, medidor de reservatóriosTLazIndustrialTankGauge, gráfico vetorialTLazVectorDonutChart, mapa de calor térmicoTLazMatrixHeatmape indicadorTLazProductStockIndicator. - UI Moderna & Contêineres: Painel sanfonado colapsável
TLazAccordionContainer, barra de abas tipadas com badgesTLazCustomTabBar, painel High-DPITLazHighDpiThemedPanele barra de açõesTLazCRUDOperationsBar. - Segurança & Criptografia: Cofre em memória
TLazCryptoVaultStorage, emissor e validador de tokensTLazJwtSecurityManager, compactadorTLazBinaryBlobContainere validador de chave NF-eTLazFiscalXmlValidator. - Diagnósticos & RTTI: Auditoria genealógica
TLazTypeInfoInspector, micro-benchmarks em nanossegundosTLazCodeBenchmarkHarnesse sonda de telemetriaTLazSystemMetricsProbe.
- Instrumentação & Dashboards: Mostrador analógico
2. Demonstração Delphi (VCL & FMX):
- Localização do Projeto:
Livro2_Delphi_VCL_FMX/code/demo/DlpComponentsDemo.dproj(e espelhado emdelphi/demo/). - Como executar: Abra o projeto no Delphi 12 Athens e pressione F9, ou compile via MSBuild:
msbuild Livro2_Delphi_VCL_FMX/code/demo/DlpComponentsDemo.dproj /p:Configuration=Release
📂 50 Projetos Independentes de Exemplo (Aprenda Componente por Componente)
Para facilitar o estudo isolado, depuração e experimentação individual de cada recurso sem sobrecarga de um projeto monolítico, a obra conta com 50 pastas de projetos independentes para cada ambiente (Lazarus e Delphi):
- Lazarus / LCL: Disponíveis em
Livro1_Lazarus_LCL/code/examples/(e espelhado emlazarus/examples/). - Delphi / VCL-FMX: Disponíveis em
Livro2_Delphi_VCL_FMX/code/examples/(e espelhado emdelphi/examples/).
Cada subpasta (do 01 ao 50) contém:
- Projeto compilável independente: Arquivo
.lpi+.lpr(Lazarus) ou.dproj+.dpr(Delphi). - Formulário de teste dedicado:
FormMain.paseFormMain.lfm/FormMain.dfmcom interface funcional focada no componente em questão. - Documentação local (
README.md): Explicação teórica do componente, tabela de propriedades principais, eventos e instruções diretas de execução.
Exemplo de Uso Rápido:
Para testar isoladamente o mostrador analógico (TLazAnalogGauge):
# Abrir no Lazarus ou compilar via linha de comando:
lazbuild lazarus/examples/09_AnalogGauge/Demo_09_LazAnalogGauge.lpiPara testar o executor assíncrono multithread (TDlpAsyncTaskRunner no Delphi):
msbuild delphi/examples/21_AsyncTaskRunner/Demo_21_DlpAsyncTaskRunner.dproj📖 Compilação Automatizada dos Livros em PDF
Para recompilar os dois livros em formato PDF com o tema editorial limpo (padrão de editora internacional com fundo branco e destaque de sintaxe Pascal):
# Execução no PowerShell
powershell -ExecutionPolicy Bypass -File "scripts/compile_books_to_pdf.ps1"O script utiliza Pandoc + o tema scripts/book_theme.css + o motor headless do Chromium/Edge para compilar e renderizar os dois livros em menos de 15 segundos sem gerar URLs ou rodapés de navegador.
📄 Licença
Este projeto é distribuído sob a licença MIT. Consulte o arquivo LICENSE para mais detalhes.

