Artigo SQL Magazine 22 - Persistência de objetos no Caché

O paradigma de desenvolvimento orientado a objetos está se tornando uma prática comum entre os desenvolvedores de software.

O paradigma de desenvolvimento orientado a objetos está se tornando uma prática comum entre os desenvolvedores de software. No entanto, os mecanismos de persistência de objetos têm se apresentado como uma dificuldade quando se pretende armazenar estes objetos em um banco de dados relacional.

Uma solução seria construir uma camada de mapeamento objeto-relacional entre a aplicação e o banco de dados, entretanto, devido à sua complexidade e custo, essa solução deve ser cuidadosamente avaliada. Outra maneira é armazenar estes objetos em um banco de dados puramente orientado a objetos, mas este tipo de banco ainda não tem sua utilização muito difundida. Uma terceira solução, abordada neste artigo, seria adotar um banco de dados objeto-relacional, como, o Caché da InterSystems.

Intersystems Caché

O Caché utiliza conceitos de orientação a objetos, tais como herança, polimorfismo, encapsulamento e associação entre as classes. Além disso, trabalha com a abordagem relacional e possui uma estrutura de armazenamento chamada de “Globais” que propicia o armazenamento de todos os tipos de dados, incluindo streams binárias e imagens gráficas. O nome Global indica que todos os usuários podem acessar estes dados. Este conceito não é muito comum entre os bancos de dados objeto-relacionais.

O Caché possui linguagens próprias como o COS (Caché Object Script) e o Basic (semelhante ao Visual Basic) que são usadas nas aplicações, por exemplo, para construir métodos e criar classes. Outra linguagem é o CSP (Caché Server Pages) para desenvolver aplicações Web. O Caché permite também a utilização da linguagem SQL ANSI para acessar e manipular dados.

Neste artigo, utilizaremos um exemplo para demonstrar a utilização deste SGBD. Para isto será considerado um modelo de classes, expressado na notação UML (Unified Modeling Language), representando uma pequena parte de um sistema acadêmico. A partir deste modelo é mostrada a interação com as ferramentas e conceitos da orientação a objetos dentro do banco de dados Caché.

Modelo de classes

O diagrama da Figura 1 apresenta um fragmento de um sistema escolar, representando suas classes com atributos, serviços e relacionamentos, não tendo o objetivo de ser um exemplo completo. As classes Aluno, Professor e Curso representam os cadastros básicos. A classe Pessoa evidencia os atributos comuns de Alunos e Professores, incluindo seu Endereço. A classe Titulação representa o grau de escolaridade de um professor (Graduação, Especialização, Mestrado, Doutorado). A classe Avaliacao registra as notas de Alunos em Cursos. Por fim, Alunos e Professores estão associados a Cursos.

Figura 1. Diagrama de classes

Criando classes" [...] continue lendo...

Artigos relacionados