DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Biblioteca madCollection - Artigo Revista Clube Delphi 129

A coleção madShi é uma espécie de canivete suíço para Delphi cujas funções vão desde manipulação de strings à segurança. Ela pode rapidamente suprir uma série de necessidades básicas dos programadores sem tirar o foco do negócio.






Biblioteca madCollection
Muito além de exceptions e hooking

 
Biblioteca madShi
Muitos programadores baixam ou criam bibliotecas de uso geral e de fácil chamada para procurar ou formatar strings, encontrar um diretório compartilhado, criptografar uma senha entre outras funcionalidades. Algumas dessas funcionalidades podem ser supridas pela VCL e pela RTL, outras podem ser vistas na JCL do projeto JEDI e ainda existem várias bibliotecas de funções a serem citadas. A coleção de bibliotecas madShi possui oito pacotes, cada um tendo de duas a nove units. Os pacotes madExcept para tratamento de exceções e madCodeHook para API Hooking já foram tratados em artigos anteriores dessa revista. Este artigo visa tratar de alguns aspectos interessantes dos seis pacotes restantes.

O próprio Delphi possui uma vasta biblioteca de funções com vários objetivos. Mesmo assim sempre há a necessidade de se fazer download de bibliotecas de funções na internet ou de se criar uma biblioteca pessoal que possa ser usada em vários projetos.
O objetivo deste artigo não é esmiuçar ou servir de documentação à coleção madShi, até porque o projeto já possui uma documentação que pode ser vista na seção de links. Esta documentação é muito grande, e mesmo assim não é completa levando-se em conta a quantidade de aplicações práticas que essas units podem ter, mas a granularidade dessas necessidades. O uso ou não da biblioteca madShi dependerá muito das necessidades do projeto. Haverá ocasiões em que a biblioteca madShi será a melhor opção, e haverá outras ocasiões onde a coleção não será a melhor saída, mas será a saída mais simples ou rápida.
O pacote madBasic contém oito units com funções de propósito geral. Dentre essas oito as mais úteis no dia-a-dia são a madZip para compressão, a madCrypt para criptografia, a madLists que possui a implementação de alguns tipos de listas que não tem nativamente no Delphi, e a madStrings que possui algumas funções para tratar strings que geralmente são feitas pelo próprio programador.
Se uma empresa já tem a coleção de pacotes madShi os programadores podem considerar essas funções em vez de procurar mais algum pacote de terceiros ou de tentar criar do zero. A seguir algumas das funções da biblioteca.
Compressão: tem o objetivo de eliminar o uso de componentes de compressão complicados para tarefas de compressão simples. A unit madZip fornece um compressor de strings fácil de usar quando o objetivo for simplesmente comprimir strings. Isso pode ser útil onde o problema é espaço e não processamento. Um exemplo é a transmissão, pela internet ou através de um dispositivo de armazenamento, um grande lote de informações que é exportado por um sistema e importado por outro no final do dia (batch).
Criptografia: sem usar componentes de criptografia de terceiros a biblioteca madShi oferece serviços de criptografia chamando-se apenas uma função. O algoritmo utilizado é o "BlowFish". Não é o mais seguro de todos, mas é livre de patentes.
Strings: uma série de funções de busca, quebra, formatação e comparação de strings.
Tools: funções para obter informações do sistema operacional, transformar um método em uma procedure estática ou uma procedure estática em método.
Os pacotes madShell e madTools oferecem funcionalidades para trabalhar com o Shell do Windows (Explorer), arquivos e listagens de diretórios especiais (diretórios cujo local pode mudar de acordo com a instalação, e que geralmente ficam gravados no registro) como o diretório Arquivos de Programas, Windows ou Meus Documentos.
Algumas funções do pacote madShell incluem obter o diretório especial do Windows ou o diretório do sistema. Ideal para usar em processos de instalação e configuração onde um sistema precisa identificar onde é o diretório de sistema do Windows para poder copiar uma dll ou bpl.
Existe também a função GetSpecialFolder que aceita como parâmetro um objeto da coleção TSpecialFolder. Se for passado, por exemplo, sfMyMusic, a função GetSpecialFolder trará o diretório Minhas Músicas do usuário e configuração correntes. A coleção TSpecialFolder tem mais de 60 membros, cada um trazendo um diretório especial diferente. Há neste pacote um conjunto de referências a procedures estáticas ou métodos de objetos feitos para se monitorar eventos do shell. Os eventos monitorados vão desde operações com arquivos (inclusão, exclusão, troca de nome) a mapeamento de unidades de rede.
Funções para listar ShellObjects são úteis para se trabalhar com objetos do sistema operacional que são "navegáveis", mas não são arquivos ou diretórios no sistema de arquivos. Por exemplo, o painel de controle. Embora ele pareça uma pasta em algum lugar do disco, na verdade ele é uma espécie de programa escondido em um módulo do sistema operacional.
"


ATENÇÃO! A exibição deste artigo foi interrompida.


  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03