orm e ef
DESCRIPTION
Breve apresentação sobre o que é ORM e Entity FrameworkTRANSCRIPT
Apresentação ORM| 2014Cristian dos Santos Mathias
Gabriel Moreira Carlos
Sumário
• Overview
• Características
• Entity Framework
Overview
O que é ?
Um ORM, nada mais é do que um Framework ou um conjunto de classes
que permite que você faça este trabalho sem precisar escrever códigos de
conexão com o banco, querys de SQL a todo momento, preservando as
características de orientação a objetos da linguagem face à natureza
relacional dos bancos de dados atuais.Fonte: devmedia
Proposta do ORM
• Resolver o problema entre Orientação a Objetos (OO) e Entidade Relacionamento
(ER);
• Focar a modelagem no domínio do negócio;
• Facilitar o acesso a dados;
• Tornar o trabalho mais orientado a objetos.
Fluxo
Vantagens
• Produtividade;
• Código mais limpo;
• Melhora a padronização da aplicação;
• Não é necessário o uso de SQL;
• Modelagem Orientada a Objeto;
• Abstração do banco de dados;
• Refatoração mais fácil.
Desvantagens
• Manipulação de grande quantidade de dados com a necessidade de grande
desempenho.
Alguns frameworks ORM
• Nhibernate;
• Hibernate;
• Entity Framework.
Características
Características
• Uso de unidade de trabalho;
• Isolamento contexto de dados, não permite interferências externas;
• Mapa de identidade;
• Garantir que tenha apenas um registro quando o contexto é inicializado.
• Garantir o status de um registro.
• Carga tardia;
• Manipulação de dados (CRUD) e persistência.
• Estrutura Integra;
Características
• Permite o uso de:
Campo Identidade;
Mapeamento de chaves;
Mapeamento de tabelas associativas;
Herança de tabelas.
• Permite modelar as entidades de forma não tabeladas:
Abstração;
Entidades;
Objetos de valor;
Coleções.
Entity Framework
Entity Framework
O ADO.NET Entity Framework é uma das principais ferramentas
de persistência presentes na plataforma .NET, sendo parte integrante do pacote de
tecnologias ADO.NET.
Proporciona soluções para minimizar o problema de impedância, abstraindo do
desenvolvedor vários detalhes dos bancos de dados relacionais. Além disso, fornece
uma série de recursos que aumentam muito a produtividade no desenvolvimento de
aplicações persistentes.
Fonte: wikipedia
Tipos de mapeamentos
• Model First
Cria primeiro o modelo e o banco é gerado depois
• Database First
Cria primeiro o banco de dados e depois o modelo;
• Code First
Cria o modelo a partir de código de classes;
Hands-onhttps://github.com/cristianmathias/Demo-EF-CodeFirst-Migrations
Obrigado!Cristian dos Santos [email protected]
Gabriel Moreira [email protected]