Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: Algoritmo :: Explorando Compressão de Dados com o Projeto naldodj-hb-huffman (xBase)

✨ **Explorando Compressão de Dados com o Projeto naldodj-hb-huffman** ✨ Recentemente, desenvolvi o **hb-huffman**, uma implementação do algoritmo de Huffman em Harbour, focada em estudo e aprendizado. Este projeto é uma oportunidade de mergulhar nos conceitos de compressão e descompressão de dados sem perdas, combinando a simplicidade da linguagem Harbour com otimizações em C para maior eficiência. ### 🔍 Sobre o Projeto O algoritmo de Huffman é uma técnica clássica que utiliza a frequência de símbolos para criar códigos binários otimizados, reduzindo o tamanho de textos sem perder informações. No **naldodj-hb-huffman**, implementei uma versão prática e otimizada desse método, ideal para quem deseja entender como a compressão funciona na prática. O projeto inclui: ✅ **Construção Dinâmica da Árvore**: Baseada em frequências calculadas ou fornecidas. ⚡ **Otimização em C**: Funções como `StrOccurs` aceleram a contagem e manipulação de caracteres. 📚 **Flexibilidade**: Suporta desd...

Protheus :: Advpl :: Utilizando scripts em PowerShell para manipular objetos COM :: Combo IV : Excel

No “Post” anterior, Protheus :: Advpl :: Utilizando scripts em PowerShell para manipular objetos COM :: Combo III : Excel, vimos como efetuar a “integração” do totvs/protheus server com o PowerShell para manipulação de objetos COM, no exemplo o Excel. Os exemplos, apesar de funcionais, não eram muito rápidos em função da interação totvs/protheus vs PowerShell vs Excel a cada registro.

Como prometido, os exemplos anteriores foram reescritos de forma a melhorarmos a performance da integração, interação e geração do arquivo. Para isso, um arquivo intermediário será utilizado. Ele será gerado pelo totvs/protheus server e será manipulado pelo PowerShell. Dessa forma, a interação totvs/protheus server vs PowerShell/Excel é minimizada fazendo com que a geração da planilha fique, no mínimo, duas vezes mais rápida. Ou seja, conseguiremos o mesmo resultado dos exemplos anteriores com um ganho de 50% na performance.

Ambos os exemplos foram reescritos. Podemos utilizar o PowerShell do Client ou do Server.

O arquivo intermediário a ser utilizado é do tipo ‘export-csv’ e que será manipulado pela ‘import-csv’ do PowerShell.

image

Delimitamos os dados usando “|” (pipe) chr(124) e o abrimos, no PowerShell usando import-csv. Simulado o processo no PowerGui Script Editor teríamos:

image

O interessante, desse modelo, é que o PowerShell, quando usamos import-csv, mapeia as informações da primeira linha e podemos usar  esse mapeamento para referenciá-los.

image

O “instantâneo” do código que nos facilitará essa integração pode ser visto abaixo:

image

image

Para baixar os novos exemplos, onde perceberão uma melhora significativa na performance, clique aqui.

[]s

иαldσ dj

Comentários

Postagens mais visitadas