Podemos dizer que serializar significa colocar os valores dos atributos de um objeto de uma forma que fique em série (seqüência). A serialização é uma técnica usada para transmitir objetos entre camadas, rotinas e até mesmo aplicações. Pode-se também utilizar essa técnica para persistir objetos, ou seja, gravar objetos em disco, fazer a transmissão remota de objetos via rede, armazenar os objetos em um banco de dados e/ou arquivos (XML, TXT etc.).

Se você faz a serialização, naturalmente vai querer fazer o processo inverso, que seria restaurar os atributos de um objeto gravado em um stream, que pode ser um arquivo XML, TXT etc. Chamamos esse processo de desserialização.

Cenário atual

Normalmente, quando precisamos armazenar ou transmitir objetos em Delphi, escrevemos um método específico para exportar e importar os atributos de cada classe que estaremos manipulando. Dessa maneira, além de utilizarmos uma abordagem para cada situação, o que se torna dispendioso e pouco produtivo, nos preocupamos com uma implementação que não faz parte da regra de seu negócio, assim como o fato de termos uma rotina de exportação e importação para cada classe, aumentando muito a chance de erros no seu projeto.

A ausência de um padrão para o formato de exportação/importação dificulta a integração de novos membros na equipe, que se veêm obrigados a entender o que o programador anterior fez no código para cada caso.

nTierObjects

nTierObjects é um framework para permitir a comunicação das diferentes camadas de uma aplicação (camada cliente, camada de aplicação ou de regra de negócio, camada de banco de dados, etc.) através da utilização de objetos puros. Dessa maneira, a arquitetura abstrai detalhes de implementação, como o acesso a banco de dados e a codificação de mensagens (de aplicação) entre as camadas do sistema, permitindo que o desenvolvedor se concentre na implementação das regras de negócio de suas aplicações em uma estrutura 100% Orientada a Objetos.

Como primeiro passo, a empresa criadora do nTierObjects está disponibilizando um componente free e open source chamado ntoStream, para serialização automática de objetos, em formato XML, de forma a criar um padrão que possibilite a abstração da implementação do processo de serialização e desserialização.

...
Quer ler esse conteúdo completo? Tenha acesso completo