Sunday, March 29, 2015

ArrayLists e Serialização

Devido à um projeto externo, tive que trabalhar bastante com estruturas de dado e maneiras de armazená-los em formato de arquivo. Esse projeto envolvia o armazenamento e procura de hyperlinks (cada um deles com um nome, um comentário, uma metatag, uma data de criação e uma possível data de modificação).

Para facilitar a procura pelo database usando qualquer um desses critérios como parâmetro, a estrutura de dados necessariamente teria que ser algo simples de se percorrer e retornar os resultados positivos, por isso resolvi que um ArrayList era a melhor solução.

Um ArrayList funciona como é esperado: É uma sequência de objetos (no meu caso, hyperlink, uma estrutura formada por 5 strings, nome, comentário, etc), entre elas tendo um ponteiro apontando para o próximo objeto. O java já tem uma implementação boa, com diversas funções para manipular sua lista de dados, como Add, Insert e Remove.


No entanto, como se trata de uma database de hyperlinks, não se pode perder o conteúdo quando se fecha o programa. Se ainda estivesse trabalhando com C, seria necessário implementar uma lógica para armazenar toda a informação em plain-text em um arquivo de texto e por fim gerar uma ArrayList à partir de qualquer arquivo de texto dentro desses parâmetros que foram definidos.

Felizmente, existe em java um método chamado serialização. Ele basicamente faz uma cópia do estrutura serializada em arquivo binário, e permite a deserialização (conversão do arquivo binário em estrutura de dado) sem maiores complicações.


Se o assunto continuar pertinente, entrarei em detalhes sobre a implementação da serialização e funções mais avançadas de ArrayList no próximo post. Até lá!

1 comment:

  1. O blog está ok. Faltam referencias para os tópicos novos e comentários nos programas. Nada foi feito durante abril?

    ReplyDelete