Escrito em May 25th, 2009 as 12:00 am por

0 Comentários

Vamos falar um pouco sobre um banco de dados orientado a objetos chamado DB4O (DB4Objects).

Este banco de dados opensource (http://www.db4o.com/) permite que objetos possam ser armazenados diretamente na estrutura de persistência.

Ele funciona em 2 modos:

  1. Arquivo – Permite uso local (sem servidor), parecendo um MDB, só que orientado a objetos.
  2. Cliente/Servidor – O Componente permite criar e consumir um servidor, fornecendo assim mais flexibilidade de uso e distribuição.

Você pode se perguntar porque utilizar um banco de dados orientado a objetos.

Bom, a resposta é tão simples e tão complicada quando os motivos de utilização de banco de dados relacional.

A grande questão (ao meu ver) é a mudança de paradigma, que já está em processo de mudança com os frameworks ORM (Mapeamento Objeto Relacional), que permitem o uso de bancos de dados relacionais só que com uma boa parte das funcionalidades mapeadas para objetos (em detrimento dos DataSet’s).

Ai vejo que já entra a questão da cultura de pensar em relação. Bom, vamos a um exemplo:

Imaginemos o cenário de uma tabela de Usuários e Logs.

O natural (em um Banco de Dados Relacional) seria dar um Select na Tabela de Usuários e depois um Select na Tabela de Logs e preenche o Grid.

Na em um Banco de Dados Orientado a Objetos, um objeto Usuário tem uma propriedade que é uma Coleção de Logs. Então, basta pedir um objeto Usuário que combine com a chave (tipo CPF, CNPJ, etc) e acessar a propriedade de Logs.

Mas até ai é bem parecido, mas, no caso do Banco de Dados Orientado a Objetos o que temos não é uma representação dos dados (como no modelo Relacional) e sim a instância de um objeto que representa os dados como eles realmente são. O que significa necessáriamente que, se esse objeto for alterado então quem consome o objeto irá refletir imediatamente em memória as alterações.

Ainda temos o ganho de podermos modelar nossos sistemas realmente orientado a objetos e não com meia orientação a objetos e meio relacional, afinal, temos de persistir os dados de alguma forma.

Bom, neste post é só. Estou preparando outros artigos de como usar o DB4O e pelo meu uso dele eu prometo que irá surpreender a todos. Mas, sejamos realistas e vou admitir que não espero ver uma ferramente de BI ou ERP no mercado com um banco de dados orientado a objetos tão cedo. Contudo, para sites pequenos, sistemas comerciais, ponta de estoque, etc (o famoso basicão) ele desce redondo.

Se você gostou do post, deixe um comentário ou assine nosso RSS RSS.

Posts Relacionados:

  1. Reflection – Parte 3 (Fields)
  2. Compressão de (Compactar) ViewState
  3. Reflection Parte 2 – Construtores
, , ,

Be the first to start a conversation

Deixa uma Resposta

znjdb32s6g