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

Tag: Ferramentas Delphi

3 resultado(s)

Delphi Unit Backtrace: descubra quem usa uma unit e como ela chega ao DPR

Quem mantém um projeto Delphi grande conhece a pergunta: se eu alterar ou remover esta unit, quais partes da aplicação serão afetadas? Encontrar as referências diretas na cláusula uses ajuda, mas nem sempre mostra o caminho completo.

Ver resumo completo

Quem mantém um projeto Delphi grande conhece a pergunta: se eu alterar ou remover esta unit, quais partes da aplicação serão afetadas? Encontrar as referências diretas na cláusula uses ajuda, mas nem sempre mostra o caminho completo. Uma unit pode ser usada por outra, que é usada por uma terceira, até chegar ao arquivo principal do projeto.

Foi para tornar essa investigação mais prática que criei o Delphi Unit Backtrace. A primeira versão pública já está disponível no GitHub, com executáveis para Win32 e Win64. A ferramenta recebe um arquivo .dproj e o nome da unit, descobre o fonte correspondente e percorre as dependências no sentido inverso: da unit escolhida até seus consumidores e, quando existe essa ligação, até o DPR.

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

Atropos: como otimizar automaticamente a cláusula uses no Delphi

Quem trabalha há bastante tempo com Delphi provavelmente já encontrou units com cláusulas uses enormes, formadas por dezenas de dependências que ninguém sabe ao certo se ainda são necessárias. Algumas foram adicionadas automaticamente pela IDE, outras eram utilizadas por trechos de código que já não existem e muitas permanecem na seção interface mesmo sendo necessárias apenas na implementação.

Ver resumo completo

Quem trabalha há bastante tempo com Delphi provavelmente já encontrou units com cláusulas uses enormes, formadas por dezenas de dependências que ninguém sabe ao certo se ainda são necessárias. Algumas foram adicionadas automaticamente pela IDE, outras eram utilizadas por trechos de código que já não existem e muitas permanecem na seção interface mesmo sendo necessárias apenas na implementação. Embora pareça um problema meramente estético, esse acúmulo pode aumentar o acoplamento entre as units, dificultar a manutenção e ampliar desnecessariamente o impacto de cada alteração realizada no projeto.

Remover essas dependências manualmente nem sempre é simples. Excluir uma unit da cláusula uses, compilar o projeto e repetir o processo até encontrar todas as dependências desnecessárias pode consumir muito tempo, principalmente em sistemas antigos ou de grande porte. Além disso, algumas units possuem efeitos colaterais durante a inicialização da aplicação e não podem ser removidas apenas porque seus símbolos não aparecem diretamente no código. É nesse cenário que o Atropos se apresenta como uma ferramenta interessante para a comunidade Delphi.

O Atropos é um projeto open source (github.com/ViniAbreu/Atropos) criado para analisar e otimizar automaticamente as cláusulas uses de projetos Delphi. A ferramenta identifica units aparentemente não utilizadas, verifica quais dependências podem ser transferidas da seção interface para a seção implementation e modifica os arquivos de código. Depois disso, ela tenta compilar o projeto para confirmar que as alterações continuam válidas. Se a compilação falhar, os arquivos modificados são restaurados automaticamente.

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 →