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:
- Arquivo – Permite uso local (sem servidor), parecendo um MDB, só que orientado a objetos.
- 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.
Posts Relacionados:



Be the first to start a conversation