Mapeamento ORM com o TMS Aurelius - Revista ClubeDelphi Magazine 151

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
 (7)  (0)

Neste artigo vamos conferir o funcionamento do framework ORM da TMS para Delphi, o Aurelius. Serão abordados alguns conceitos sobre ORM, além de particularidades do TMS Aurelius, como por exemplo, os SQL Dialects.

Artigo do tipo Tutorial
Recursos especiais neste artigo:
Contém nota Quickupdate.
Mapeamento ORM com TMS Aurelius
Neste artigo vamos conferir o funcionamento do framework ORM da TMS para Delphi, o Aurelius. Serão abordados alguns conceitos sobre ORM, além de particularidades do TMS Aurelius, como por exemplo, os SQL Dialects. Neste artigo também iremos conferir como fazer a conexão com um banco de dados e ver que é possível trabalhar com bancos de dados já existentes ou criar novos bancos baseados na estrutura de classes de sua aplicação. Isso é possível através dos mapeamentos das classes.


Em que situação o tema é útil

Quando se deseja desenvolver utilizando a orientação a objetos mas, o sistema de armazenamento de dados é um banco relacional. Para realizar a transformação dos dados para objetos e vice versa é necessário aplicar um ORM para diminuir as diferenças entre tabelas e classes.

A programação orientada a objetos está cada vez mais popular, e isso não é diferente com o programadores Delphi. Este fato se deve a gama de vantagens que essa tecnologia apresenta, entre elas, podemos destacar o desenvolvimento de aplicações mais otimizadas, códigos melhores organizados, e abstração da interação com o banco de dados, sem mencionar um reaproveitamento de código através de reuso de classes, aplicação de herança e outras características da orientação a objetos. Essas e outras vantagens permitem o programador ter mais tranquilidade nas futuras manutenções de seus softwares. Mas o uso de orientação a objetos resultou em um pequeno problema. É indiscutível a popularidade do uso de bancos de dados relacionais para armazenamento de dados. Eles possuem seu mérito, estão no mercado a há anos e já se mostraram mais que eficientes. Porém, os conceitos relacionais são limitados quando comparados aos conceitos orientados a objetos. Isso gera uma diferença conhecida como impedância objeto-relacional. Buscando a solução para esse “vazio” entre as duas tecnologias, foi criada uma ponte, um mecanismo que ligue as duas realidades. Assim, nasceram os frameworks ORM, que realizam o mapeamento dos dados de lado para o outro. De uma forma bem simples, um ORM nada mais é do que um conjunto de classes que permitem dados expressos em classes serem salvos em bancos relacionais, sem que se faça necessário escrever códigos de conexão com o banco ou consultas SQL a todo o momento, dessa forma se preservam as características da orientação a objetos. Com um ORM é possível mapear uma entidade do mundo real para o ambiente computacional e fazer com que as regras de negócios sejam expressas em classes, e posteriormente salvas em um banco relacional.

Vários programadores Delphi estão aderindo às novas tendências do mercado e com o passar do tempo o RAD recebeu vários novos recursos para trabalhar com essas tecnologias, podemos citar alguns frameworks como o DORM e o Aurelius que nos permitem trabalhar da mesma forma dos outros ambientes de desenvolvimento, neste artigo nós vamos trabalhar com o framework ORM Aurelius.

O Aurelius

O Aurelius foi criado pela TMS, apesar de novo no mercado, é um completo framework que permite criar aplicações com todas as vantagens citadas sobre OO e ORM e possui um manual completo que mostra como a ferramenta funciona (ver seção Links). O Aurelius nos permite trabalhar com vários bancos de dados, existe um adaptador para cada componente de acesso no Delphi e para utilizar é muito simples, basta fazer o uso da Unit no seu código, por exemplo, para utilizar o dbExpress o Aurelius disponibiliza o adaptador TDBExpressConnectionAdapter que pode ser utilizado através da Unit Aurelius.Drivers.dbExpress. Todos os adaptadores estão declarados na Unit Aurelius.Drivers.XXXXX, onde XXXXX é o nome da tecnologia de acesso a dados. A "

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?