Guia Linguagem Java

Serialização de Objetos em Java

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (1)  (0)

Como utilizar o mecanismo de serialização de objetos para representar o estado de um objeto como uma sequência de bytes. Com a serialização é possível salvar objetos em arquivos de dados.

Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo:

Como utilizar o mecanismo de serialização de objetos para representar o estado de um objeto como uma sequência de bytes. Com a serialização é possível salvar objetos em arquivos de dados. Já a desserialização permite que os objetos persistidos em arquivos possam ser recuperados e seus valores recriados na memória.

Em que situação o tema é útil:

O processo de serialização de objetos é bastante utilizado em sistemas distribuídos (coleção de computadores independentes conectados por uma rede e equipados com um sistema de software distribuído) e na persistência de dados (manter dados além da duração da execução do programa). Com a transformação do objeto em bytes é possível enviar o objeto por uma rede, ou salvá-lo em um arquivo ou em um banco de dados.

Serialização de Objetos:

Serialização é a técnica que permite transformar o estado de um objeto em uma sequência bytes. Depois que um objeto for serializado ele pode ser gravado (ou persistido) em um arquivo de dados e recuperado do arquivo e desserializado para recriar o objeto na memória.

A orientação a objetos surgiu na década de 60, através da linguagem de programação Simula 67, adequada à programação de simulações de sistemas que podem ser modelados pela interação de um grande número de objetos distintos. Uma classe em Simula é um módulo englobando a definição da estrutura e do comportamento comuns a todas as suas instâncias (objetos).

As ideias implementadas na linguagem Simula serviram de base para a linguagem Smalltalk, desenvolvida no Centro de Pesquisas da Xerox durante a década de 70, que incorporou o princípio de objetos ativos, prontos a reagir a mensagens que ativam comportamentos específicos do objeto.

Os conceitos introduzidos pelas linguagens Simula e Smalltalk ganharam evidência na década de 90, a partir de modelos orientados a objetos sugeridos por diversos autores como Booch, Rumbaugh e Jacobson, com o propósito de ajudar a diminuir a complexidade do desenvolvimento de software.

Os fundamentos do modelo de objetos, apresentados na Figura 1, aplicados ao processo de desenvolvimento de software complexo dividem-se em três etapas: 1) Análise Orientada a Objetos que se preocupa em enxergar a estrutura do problema e decompô-la em entidades “abstratas” de classes e objetos; 2) Projeto Orientado a Objetos que procura organizar e descrever essa estrutura “sistematicamente” em um modelo de objetos; e, 3) Programação Orientada a Objetos que “implementa” as estruturas modeladas em código de computador.

Figura 1. Fundamentos do modelo de objetos.

Elementos chave da programação orientada a objetos: classe e objeto

Java é uma linguagem orientada a objetos. O desenvolvimento de software baseado no modelo da orientação a objetos permite aos programadores de computador construir sistemas a partir de componentes reutilizáveis, chamados de classes. Uma classe generaliza/representa um conjunto de objetos similares que interagem entre si para atingir o resultado esperado.

A classe é uma abstração (modelo conceitual) que descreve as propriedades relevantes de uma aplicação em termos de sua estrutura (dados) e de seu comportamento (operações). Em programação a classe corresponde a um tipo de dados definido pelo usuário que tem alguns dados internos (atributos) e algumas operações (métodos), na forma de procedimentos ou funções, que atuam sobre estes dados. Resumindo, a classe é uma entidade abstrata (tipo de dados), um gabarito usado na declaração e criação de objetos. Através da definição de uma classe, descreve-se que atributos, ou propriedades o objeto terá e que funcionalidades podem ser requisitadas aos objetos da classe.

No paradigma de orientação a objetos, tudo pode ser potencialmente representado como um objeto. Sob o ponto de vista da programação, um objeto não é muito diferente de uma variável no paradigma de programação convencional. Por exemplo, quando define-se uma variável do tipo int em Java, essa variável tem: a) um espaço em memória para registrar o seu estado atual (um valor); e, b) um conjunto de operações associadas que podem ser aplicadas a ela, através dos operadores definidos na linguagem que podem ser aplicados a valores inteiros (soma, subtração, multiplicação e divisão, por exemplo). Da mesma forma, quando cria-se um objeto, esse objeto adquire um espaço em memória para armazenar seu estado (os valores de seu conjunto de atributos, definidos pela classe) e um conjunto de operações que podem ser aplicadas ao objeto (o conjunto de métodos definidos pela classe). Resumindo, os objetos são entidades reais (variáveis), existem no tempo, são mutáveis, têm estado e comportamento, e podem ser criados e destruídos.

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?