Tecnologia além do código.
Régys Borges da Silveira
Início / Acervo

Tag: CI/CD

6 resultado(s)

Composição ilustrativa: livro Delphi Vivo, de Régys Borges da Silveira, em destaque sobre uma mesa de trabalho.

Delphi Vivo: como modernizar sistemas sem reescrever tudo

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.

Ver resumo completo

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. Essa realidade pode gerar duas reações igualmente arriscadas: não mexer em nada ou decidir reescrever tudo.

A primeira conserva problemas conhecidos e reduz, aos poucos, a capacidade de adaptação. A segunda troca riscos visíveis por riscos novos: funcionalidades esquecidas, diferenças de comportamento, longos períodos sem entrega relevante e uma convivência difícil entre o sistema antigo e o substituto em construção. Entre esses extremos há uma disciplina de engenharia: modernizar progressivamente, em mudanças pequenas, verificáveis e reversíveis.

Modernizar não significa aplicar tecnologias recentes a qualquer custo. Significa aumentar a capacidade de entender, alterar, testar, entregar e operar o software com menos incerteza. Em um sistema Delphi, isso pode envolver desde tornar a compilação repetível até reduzir o acoplamento entre formulários VCL, regras de negócio e acesso a dados. O ponto de partida não é uma lista de ferramentas; é um diagnóstico honesto do risco.

Conheça o livro e leia uma degustação: acesse a página oficial de Delphi Vivo.

Publicado em · Régys Borges da Silveira
Ler artigo →

Delphi Vivo: meu novo livro sobre como modernizar sistemas existentes sem reescrever tudo

Há sistemas Delphi que sustentam empresas inteiras há muitos anos, eles faturam, controlam estoque, emitem documentos fiscais, conversam com bancos, integram setores e preservam regras que foram construídas depois de incidentes, mudanças legais, negociações e necessidades que já não cabem em uma documentação simples.

Ver resumo completo

Há sistemas Delphi que sustentam empresas inteiras há muitos anos, eles faturam, controlam estoque, emitem documentos fiscais, conversam com bancos, integram setores e preservam regras que foram construídas depois de incidentes, mudanças legais, negociações e necessidades que já não cabem em uma documentação simples.

Esses sistemas continuam importantes. O problema é que, com o tempo, cada mudança começa a custar mais, a versão do Delphi fica para trás. Componentes deixam de receber atualizações. O build depende de uma máquina específica. Regras de negócio aparecem em Forms, DataModules, SQL, triggers e integrações. Testes automatizados são poucos ou inexistentes. A equipe sabe que precisa avançar, mas não consegue demonstrar que a próxima alteração preservará aquilo que mantém a empresa funcionando.

Foi a partir dessa realidade que escrevi Delphi Vivo: Como modernizar sistemas existentes sem reescrever tudo.

O livro já está disponível em edição impressa pela UICLAP e em versão digital para Kindle na Amazon.

Publicado em · Régys Borges da Silveira
Ler artigo →

Boss4D 1.7.0: componentes, múltiplas versões do Delphi e uma cadeia de entrega verificável

Gerenciar dependências é apenas uma parte do trabalho em projetos Delphi. Quando o projeto utiliza componentes visuais, pacotes runtime e design-time, diferentes versões da IDE e pipelines de integração contínua, instalar uma biblioteca deixa de ser uma simples operação de download.

Ver resumo completo

Gerenciar dependências é apenas uma parte do trabalho em projetos Delphi. Quando o projeto utiliza componentes visuais, pacotes runtime e design-time, diferentes versões da IDE e pipelines de integração contínua, instalar uma biblioteca deixa de ser uma simples operação de download.

A versão 1.7.0 do Boss4D foi construída para enfrentar esse cenário completo. Ela amplia o gerenciador de dependências para cuidar também da compilação, instalação e recuperação de componentes, sem abandonar a compatibilidade com projetos BOSS nem o suporte ao Lazarus.

O resultado é uma versão especialmente importante para equipes que precisam reproduzir ambientes Delphi, automatizar builds e manter evidências sobre os pacotes utilizados.

Publicado em · Régys Borges da Silveira
Ler artigo →

Code Coverage em Delphi: Como Medir a Qualidade dos Seus Testes e Integrar com SonarQube

Quando falamos sobre qualidade de software, um dos primeiros assuntos que surgem é a criação de testes automatizados. Entretanto, existe uma pergunta que muitas equipes deixam de fazer: os testes realmente estão exercitando as partes mais importantes do sistema?

Ver resumo completo

Quando falamos sobre qualidade de software, um dos primeiros assuntos que surgem é a criação de testes automatizados. Entretanto, existe uma pergunta que muitas equipes deixam de fazer: os testes realmente estão exercitando as partes mais importantes do sistema?

Em projetos Delphi isso é ainda mais relevante. Grande parte das aplicações corporativas desenvolvidas com a linguagem possui anos de evolução, milhares de linhas de código e regras de negócio extremamente complexas. Sistemas fiscais, ERPs, aplicações financeiras e integrações governamentais normalmente acumulam conhecimento de negócio ao longo de décadas, tornando qualquer alteração um potencial risco.

É justamente nesse cenário que o Code Coverage se torna uma ferramenta valiosa. Ele permite medir quais partes do código foram efetivamente executadas durante os testes automatizados, fornecendo uma visão objetiva sobre o nível de proteção existente no sistema.

Neste artigo veremos o que é cobertura de código, por que ela é importante, como implementá-la em Delphi utilizando o Delphi Code Coverage e o Delphi Code Coverage Wizard Plus, além de entender como integrar os resultados ao SonarQube para acompanhar a qualidade do projeto ao longo do tempo.

Publicado em · Régys Borges da Silveira
Ler artigo →

SonarQube e Delphi: Como Configurar Análise de Qualidade de Código em Projetos Delphi

A maioria dos sistemas Delphi possui uma característica em comum: são aplicações que evoluem durante muitos anos. ERPs, sistemas fiscais, aplicações industriais, financeiras e governamentais frequentemente acumulam milhares de linhas de código, dezenas de módulos e diversas equipes ao longo do tempo.

Ver resumo completo

A maioria dos sistemas Delphi possui uma característica em comum: são aplicações que evoluem durante muitos anos. ERPs, sistemas fiscais, aplicações industriais, financeiras e governamentais frequentemente acumulam milhares de linhas de código, dezenas de módulos e diversas equipes ao longo do tempo.

Nesse cenário, manter a qualidade do código passa a ser um desafio cada vez maior.

Questões como duplicidade de código, métodos excessivamente complexos, padrões inconsistentes, problemas de manutenção e até possíveis bugs podem se acumular silenciosamente durante anos.

É exatamente para esse tipo de situação que o SonarQube foi criado.

O SonarQube é uma das ferramentas de análise estática de código mais utilizadas do mercado e permite monitorar continuamente a qualidade dos projetos através de métricas, regras de validação e indicadores de manutenção.

Neste artigo vamos configurar uma instalação completa utilizando Docker, habilitar o suporte a Delphi através do Marketplace e executar nossa primeira análise de código.

Publicado em · Régys Borges da Silveira
Ler artigo →

TMS Smart Setup: O Gerenciador de Pacotes que Pode Transformar o Ecossistema Delphi

Durante décadas, a instalação de componentes e bibliotecas sempre foi uma das tarefas mais trabalhosas para desenvolvedores Delphi. Embora fornecedores como TMS Software, DevExpress, Fast Reports, ACBr e diversos projetos open source tenham evoluído seus mecanismos de distribuição, a realidade ainda envolve instaladores específicos, configurações manuais, ajustes em Library Path, compilação de pacotes e resolução de dependências.

Ver resumo completo

Durante décadas, a instalação de componentes e bibliotecas sempre foi uma das tarefas mais trabalhosas para desenvolvedores Delphi. Embora fornecedores como TMS Software, DevExpress, Fast Reports, ACBr e diversos projetos open source tenham evoluído seus mecanismos de distribuição, a realidade ainda envolve instaladores específicos, configurações manuais, ajustes em Library Path, compilação de pacotes e resolução de dependências.

Enquanto outras plataformas adotaram soluções modernas como npm, NuGet, Maven e pip, o ecossistema Delphi permaneceu dependente de abordagens tradicionais para gerenciamento de componentes.

Com o lançamento do projeto open source Smart Setup, a TMS Software propõe uma mudança significativa nesse cenário. Mais do que um simples instalador, o projeto surge como uma plataforma para automação de builds, gerenciamento de dependências e distribuição de bibliotecas Delphi, C++Builder e Lazarus/FPC.

A pergunta que surge é inevitável: Será que finalmente estamos diante de um verdadeiro gerenciador de pacotes para Delphi?

Publicado em · Régys Borges da Silveira
Ler artigo →