PROGRAMANDO EM ASP.NET

 Busca Online:

 
Seja bem vindo(a) Visitante, você não está logado deseja logar
no portal para participar de serviços e promoções ? clique aqui.


No caso de perder a senha, acesse aqui e receba por e-mail.
Deseja entrar em contato conosco, acesse aqui e mande-nos um e-mail.

O R M( Object Relational Mapping) - Manipulação de dados sem T-SQL e ADO.Net

por Rubens Arandas de Oliveira em 25/9/2006

Existem uma diversidade de ferramentas visuais que geram e/ou
automaticamente criam banco de dados através de linguagem de definição de
dados (DDL) SQL. Entre essas ferramentas podemos citar Visio, ERWin,
DBDesiner entre outras. No entanto as rotinas de manipulação de dados também
tomam muito tempo do desenvolvedor.
 
Indignado com isso ansiei por desenvolver uma ferramenta que lesse a
estrutura de um banco de dados e automaticamente criasse as rotinas de
manipulação de dados (DML) SQL. Entre tanto ouvi falar
sobre Object Relational Mapping (O/R M) e descobri ferramentas que
facilitaram meu trabalho de modo que hoje não é mais necessário digitar os
famosos Select, Insert, Delete e Update. Você já pensou o tempo que podemos
economizar sem termos que codificar essas rotinas tão repetitivas?
 
O que de fato é O/R M?
De modo geral, O/R M é um conceito de criar mapeamento entre tabelas, seus
campos e classes orientadas a objetos para que possamos representar a
linha de uma tabela através de uma classe em um programa orientado a
objetos.

Como funciona O/R M?
Para cada tabela em um banco de dados é criado uma classe com atributos que
representará essa tabela(Entidade), de modo que um framework de O/R M
contendo toda lógica de persistência possa manipular os dados com seus
métodos e atributos.
 
Exemplo:

Para inserir uma nova categoria e mais alguns produtos desta categoria no
banco de dados northwind, apenas teríamos que usar o seguinte código, quando
utilizado um objeto de uma biblioteca O/R M.


//Cria uma categoria
Categories ObjCategory = new Categories();
ObjCategory.CategoryName = "Software";
ObjCategory.Description = "Programas de Computador";
  
// Cria um produto
Products ObjProduct = new Products();
ObjProduct.ProductName = "SQL Server Express Edition";
ObjProduct.UnitPrice = 0.0;
ObjProduct.Discontinued = 0;
 

//Adiciona produto a categoria
ObjCategory.ProductsCollection.Add(ObjProduct);


//Cria um produto
Products ObjProduct = new Products();
ObjProduct.ProductName = "Visual Basic 2005 Express Edition";
ObjProduct.UnitPrice = 0.0;
ObjProduct.Discontinued = 0;

 

//Adiciona produto a categoria
ObjCategory.ProductsCollection.Add(ObjProduct);
 
//Salva a categoria e seus produtos ao banco de dados
Product.Save();


Note: Ao utilizar um objeto de uma biblioteca O/R M não é necessário digitar os
comandos de DML para manipulação de dados no banco de dados, o único
trabalho é atribuir os valores das propriedades - que são do mesmo tipo que
seus respectivos campos no banco de dados - e depois chamar o método Save
que já contem toda lógica do framework de O/R M para persistência.
 
Preciso criar a biblioteca de O/R M?
Sim, precisa! Mas não se assuste! Isso não é de forma "braçal", existem

ferramentas que lêem a estrutura do banco de dados e são capazes de gerar
essas bibliotecas apenas para serem utilizadas pelo seu programa.
 
Quais ferramentas de O/R M existentes?
Apesar de pouco se ouvir falar em O/R M, isso não é novo no mundo java e
existem uma série de ferramentas para essa plataforma. No entanto para
plataforma .Net, isso é relativamente novo, mas possuímos nhibernate,
ORM.NET, NDO, Vanatec, llblgen e outras.

 

Conclusão

O/R M já é muito utilizado, sua eficácia e agilidade no desenvolvimento parece muito promissor e com certeza contribui para redução do tempo de codificação.

 

Links:

http://nhibernate.sourceforge.net/

http://sourceforge.net/projects/orm-net/

http://www.netdataobjects.de/Portal/Default.aspx

http://www.vanatec.com

http://www.llblgen.com/

 

No próximo artigo veremos como criar nosso primeiro programa fazendo uso de O/RM usando llblgen.

 

Um abraço e até a próxima,

Rubens Arandas

rarandas@hotmail.com

 

voltar   comente  subir

Download Copy





 
Rubens Arandas de Oliveira



Comentários:


Comente (dê sua opinião):

Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

O R M( Object Relational Mapping) - Manipulação de dados sem T-SQL e ADO.Net
O/R M na prática com LLBLGen




eCode10 Magazine 4 Edição

Baixe a sua sem pagar nada, basta apenas ter um cadastro na comunidade aspneti.com ou ser usuário do ecode10.com.



Edições anteriores
LAYERDEV

Notícias *

Notebook 3D ou 4K?

Notebook vem com tudo...

Visão do Futuro - Day of Glass 2

Futuro próximo pode chegar cedo?...

Lenovo de 14 polegadas IdeaPad

Veja o novo notebook Lenovo IdeaPad...

Windows 8 Store

Channel9 publica um vídeo da Windows Store...

Sony Vaio série Z

Novo Vaio Ultrabook? ou não Ultrabook?...

Samsung quer comprar RIM

Imagine se juntar as duas companhias...

Surface 2.0 mostrado

Novo Surface é mostrado de forma incrível...

Skype Tablet

Será que esse skype tablet pega mesmo?...

Lenovo e o seu novo Ultrabook

Ultrabook chega também pela Lenovo...




NETITC