Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: Implementando Funções de Criptografia com "Nós" e "Trançados"

_Créditos da imagem: Gerada com auxílio do ChatGPT_ # Implementando Funções de Criptografia com "Nós" e "Trançados" A criptografia é um dos campos mais fascinantes da ciência da computação. Recentemente, no projeto experimental [Braided Encryption Message](https://github.com/naldodj/naldodj-braided_encryption_message), explorei como conceitos de "nós" e "trançados" podem ser aplicados na criação de algoritmos de criptografia. Este projeto, embora básico, é uma experiência rica para aprender mais sobre a implementação de funções criptográficas e algumas curiosidades relacionadas ao tema. ## Visão Geral do Projeto O repositório contém duas peças fundamentais: 1. [Arquivo C - `c_braided_encryption_message.c`](https://raw.githubusercontent.com/naldodj/naldodj-braided_encryption_message/refs/heads/main/src/c_braided_encryption_message.c): Implementa funções de criptografia em baixo nível, manipulando diretamente a estrutura dos dados para "...

BlackTDN :: Garantindo Qualidade no Código: Como check.hb e commit.hb Podem Ajudar no Desenvolvimento Harbour e AdvPL/TLPP



_Créditos da imagem: Gerada com auxílio do ChatGPT_

**Título do Post: Garantindo Qualidade no Código: Como check.hb e commit.hb Podem Ajudar no Desenvolvimento Harbour e AdvPL/TLPP**

**Introdução**  
Manter a qualidade do código em projetos desenvolvidos em linguagens como Harbour e AdvPL/TLPP (versões baseadas em xBase) é essencial para garantir a confiabilidade e o desempenho das aplicações. No caso do AdvPL/TLPP, amplamente utilizado para criar regras de negócios no ERP Protheus da TOTVS, a validação prévia do código é especialmente importante. Neste post, apresentaremos como os scripts `check.hb` e `commit.hb` podem ser utilizados para validar esses projetos antes de realizar o commit no GitHub.

**Por que validar antes do commit?**  
A validação prévia do código traz diversos benefícios:  
- **Prevenção de erros**: Evita que códigos com problemas de sintaxe ou fora do padrão sejam enviados para o repositório.  
- **Manutenção de padrões**: Garante que o código segue boas práticas e conformidade com o estilo estabelecido pela equipe.  
- **Redução de retrabalho**: Detecta e corrige problemas antes que eles causem impactos em ambiente compartilhado ou produção.  

**Os Scripts: `check.hb` e `commit.hb`**  
Esses scripts são ferramentas versáteis que ajudam no controle de qualidade de projetos em Harbour e AdvPL/TLPP.  

1. **`check.hb`**  
   Valida o código de forma estática, analisando:  
   - Erros de sintaxe;  
   - Padrões de codificação;  
   - Regras específicas definidas no arquivo `.gitattributes`.  

2. **`commit.hb`**  
   Complementa o `check.hb`, automatizando o processo de commit apenas após validações bem-sucedidas. Isso assegura que códigos com problemas não sejam enviados ao repositório.

**O papel do arquivo `.gitattributes`**  
Esses scripts utilizam o arquivo `.gitattributes` para aplicar validações específicas em determinados arquivos do projeto. Esse arquivo pode ser configurado para:  
- Definir padrões de codificação e formatação;  
- Especificar tipos de arquivos ou extensões que devem ser verificados;  
- Controlar regras de normalização de conteúdo.  

Um exemplo de arquivo `.gitattributes` pode ser encontrado no repositório:  
[.gitattributes](https://github.com/naldodj/naldodj-embaralha/blob/main/.gitattributes)  

**Pré-requisitos: o `hbrun.exe`**  
Para executar os scripts, é necessário o interpretador Harbour, `hbrun.exe`. Certifique-se de que ele esteja configurado no ambiente para processar os arquivos `.hb`.

**Como usar os scripts**  
1. **Faça o download**  
   Obtenha os scripts nos seguintes links:  
   - [check.hb](https://github.com/naldodj/naldodj-embaralha/blob/main/bin/check.hb)  
   - [commit.hb](https://github.com/naldodj/naldodj-embaralha/blob/main/bin/commit.hb)  

2. **Execução inicial**  
   Na primeira execução do `commit.hb`, o arquivo `.git/hooks/pre-commit` será configurado automaticamente, garantindo que a validação ocorra sempre antes dos commits.  

3. **Fluxo de trabalho**  
   - **Configure o `.gitattributes`** para incluir regras de validação personalizadas.  
   - Valide o código com o `check.hb` antes de realizar alterações importantes.  
   - Utilize o `commit.hb` para automatizar o processo e garantir que o código validado seja enviado ao repositório.

**Validação em Harbour e AdvPL/TLPP**  
Além de validar projetos Harbour, esses scripts também funcionam perfeitamente para códigos AdvPL/TLPP, usados na implementação de regras de negócios do ERP Protheus. Isso os torna uma ferramenta poderosa e unificada para desenvolvedores que trabalham em projetos xBase.  

**Conclusão**  
O uso dos scripts `check.hb` e `commit.hb` integrados com o `.gitattributes` ajuda a elevar o nível de qualidade nos projetos Harbour e AdvPL/TLPP. Com validações prévias automatizadas, você reduz a chance de erros, garante conformidade com padrões e mantém a consistência em projetos de qualquer escala.

**E você?**  
Já utiliza ferramentas de validação automática no desenvolvimento em Harbour ou AdvPL/TLPP? Teste os scripts e compartilhe suas experiências conosco! 😊  

---  


Comentários

Postagens mais visitadas