A consulta abriu, os registros apareceram na tela e o botão de salvar funcionou. Para quem desenvolve com Delphi, esse resultado tem um significado concreto: a aplicação começou a conversar com o banco.
Em muitos projetos, uma demanda chega com aparência de instrução suficiente: “incluir um campo”, “validar o cadastro”, “expor uma API” ou “automatizar uma rotina”. A implementação pode começar em minutos, especialmente quando há uma ferramenta de IA pronta para sugerir classes, métodos, SQL e testes.
Um sistema Delphi em produção raramente é apenas um conjunto de arquivos-fonte. Ele costuma concentrar regras de negócio acumuladas, integrações pouco documentadas, decisões tomadas sob restrições que já não existem e rotinas que funcionam porque foram ajustadas ao longo de muitos anos.
Por décadas, o ecossistema Delphi prosperou baseando-se na estabilidade e na tipagem forte do Object Pascal. No entanto, a recente explosão dos Grandes Modelos de Linguagem (LLMs) — como GPT-4, Claude 3.5 Sonnet e Gemini — introduziu um novo paradigma.
Ver resumo completo
Por décadas, o ecossistema Delphi prosperou baseando-se na estabilidade e na tipagem forte do Object Pascal. No entanto, a recente explosão dos Grandes Modelos de Linguagem (LLMs) — como GPT-4, Claude 3.5 Sonnet e Gemini — introduziu um novo paradigma. Não estamos mais falando apenas de compilação de código, mas de geração e interpretação semântica.
Este artigo visa "quebrar o gelo", desmistificando como essas IAs interagem com o Object Pascal e como você, desenvolvedor Delphi, pode transitar de um codificador manual para um "Programador Aumentado".
Todo desenvolvedor Delphi já encontrou (ou criou) a infame unit uFuncoes.pas ou uUtils.pas. É aquele arquivo gigantesco, repleto de procedimentos globais e funções soltas, que serve como um "canivete suíço" para o projeto.
Ver resumo completo
Todo desenvolvedor Delphi já encontrou (ou criou) a infame unit uFuncoes.pas ou uUtils.pas. É aquele arquivo gigantesco, repleto de procedimentos globais e funções soltas, que serve como um "canivete suíço" para o projeto.
Embora funcional, essa abordagem tem problemas arquiteturais:
Desde o Delphi 2005 (para .NET) e posteriormente para Win32, a Embarcadero introduziu os Helpers (Class Helpers e Record Helpers). Este recurso permite estender classes e tipos existentes sem a necessidade de herança, permitindo que você escreva códigos como Cliente.CNPJ.IsCNPJ ou Query.ToJSON.
Neste artigo, vamos explorar a fundo como utilizar Helpers para limpar seu código, analisando exemplos práticos, limitações técnicas e as melhores práticas.
Uma das discussões mais antigas e recorrentes nos fóruns de Delphi e Pascal gira em torno de uma verificação simples: devemos usar Assigned(Variavel) ou Variavel <> nil?
Ver resumo completo
Uma das discussões mais antigas e recorrentes nos fóruns de Delphi e Pascal gira em torno de uma verificação simples: devemos usar Assigned(Variavel) ou Variavel <> nil?
À primeira vista, ambas parecem fazer exatamente a mesma coisa: verificar se um ponteiro ou referência de objeto contém um endereço válido de memória. Muitos desenvolvedores escolhem um ou outro baseando-se puramente em legibilidade ou hábito ("Assigned é mais elegante" vs "<> nil é mais explícito").
No entanto, há uma razão técnica profunda para a existência da função Assigned, e ela remonta às origens do Delphi 1 e à arquitetura da VCL. Entender isso é crucial, especialmente se você desenvolve componentes.
A Reforma Tributária não é mais apenas uma discussão política; para nós, desenvolvedores, ela já tem nome e sobrenome: Nota Técnica 2025.002, que está va versão 1.32 no momento que este artigo foi escrito.
Ver resumo completo
A Reforma Tributária não é mais apenas uma discussão política; para nós, desenvolvedores, ela já tem nome e sobrenome: Nota Técnica 2025.002, que está va versão 1.32 no momento que este artigo foi escrito.
A partir de 2026, entramos no Período de Teste, onde conviveremos com o sistema atual (ICMS/ISS/PIS/COFINS) e o novo sistema (IBS/CBS). O desafio técnico é que as tags do XML mudaram drasticamente em relação ao que conhecíamos. Não se trata de novos campos no grupo Imposto, mas sim de um novo grupo "pai" chamado IBSCBS.
Neste artigo, vou mostrar a hierarquia correta das classes no componente ACBrNFe, como preencher as alíquotas de teste de 2026 e como calcular os totais sem erros de validação, considerando o básico a preencher para essa primeira fase.
Fizemos um webinar bem extenso com praticamente todas as novas funcionalidades do Delphi e também recursos já conhecidos que pouca gente utiliza, o vídeo é bem longo e abrangente, vários amigos MVPs mostraram cada um um recurso, vale muito a pena assistir
Ver resumo completo
Fizemos um webinar bem extenso com praticamente todas as novas funcionalidades do Delphi e também recursos já conhecidos que pouca gente utiliza, o vídeo é bem longo e abrangente, vários amigos MVPs mostraram cada um um recurso, vale muito a pena assistir
Participe do RAD Studio Live 2023 e junte-se aos nossos MVPs em um evento feito de desenvolvedores para desenvolvedores, reunindo toda a comunidade RAD, Delphi e C++ para compartilhar conhecimento e experiências para inspirar o seu desenvolvimento. Uma troca cheia de energia e super rica para você extrair o máximo de suas ferramentas e lançar seus apps com…
Ver resumo completo
Participe do RAD Studio Live 2023 e junte-se aos nossos MVPs em um evento feito de desenvolvedores para desenvolvedores, reunindo toda a comunidade RAD, Delphi e C++ para compartilhar conhecimento e experiências para inspirar o seu desenvolvimento. Uma troca cheia de energia e super rica para você extrair o máximo de suas ferramentas e lançar seus apps com muito mais agilidade.