SlideShare una empresa de Scribd logo
1 de 19
Trabalhando com banco
            de dados e
        Entity Framework
Me :D

Priscila Mayumi Sato (aka MayogaX)
Líder do .Net Coders
Microsoft Comunity Contributor
Banco de Dados é seu amigo

• Quase todo tipo de sistema precisa guardar
  dados
• No inicio pode assustar ter que lidar com um
  mundo diferente, o do banco de dados
• Dados também poderiam ser guardados de
  outra forma, mas bancos relacionais são seus
  amigos
Banco de Dados é seu amigo
Banco de Dados é seu amigo

• Você não precisa de desenhos bonitinhos e
  amigáveis para deixar de ter medo de banco
  de dados
• Não, eu não li o livro, não sei se é bom
• Prometo que vou lê-lo em breve :p
Banco de Dados é seu amigo

• Tabelas são dados organizados de forma
  vertical separados em colunas, cada célula é
  um campo pertencente a uma dupla de linha e
  coluna e contém um dado.
Banco de Dados é seu amigo

• Pronto, sabemos tudo já
Banco de Dados é seu amigo
Banco de Dados é seu amigo

• Tá, pode até parecer confuso, mas não é.
• Você vai precisar aprender a lidar com banco
  de dados relacional #fato
• Mas tudo pode ser mais fácil (ainda mais para
  quem está começando)
Entity Framework é mágico
Entity Framework é mágico

• EF é um ORM da Microsoft, open source o/
• ORMs são frameworks que fazem o trabalho
  sujo entre a sua aplicação e o banco de dados
• É bom que você estude querys, normalização,
  consistencia, etc e tal, mas no dia a dia pode
  pedir pro EF te ajudar :D
Entity Framework é mágico

• Há 3 formas de se trabalhar com EF:
  • Code First
  • Model First
  • Database First
Entity Framework é mágico

• Code First
     • Você codifica as suas classes POCO e ele
       automágicamente cria as tabelas para
       você
     • Você pode definir como serão as tabelas
       via código com Data Anotation ou Fluent
       Api
Entity Framework é mágico

• Model First
     • Você vai modelar suas entidades em uma
       interface visual
     • O banco de dados vai ser gerado depois
       com base no seu modelo
Entity Framework é mágico

• Database First
     • Quando você já tiver um banco de dados
       criado pode importá-lo, e até escolher
       que tabelas vai querer usar
     • Caso já tenha procedures elas também
       poderão ser importadas
Entity Framework é mágico

• Manipular suas entidades é simples
     • Códigos em Linq to Entity ou Lambda
       Expressions
     • Tratar cada tabela como uma lista de
       classes, cada registro uma instancia de
       uma classe
DEMO
Vantagem

• Desenvolvimento mais rápido
• Trabalhar com orientação a objetos mesmo ao
  manipular tabelas
• Com o EF é possível ter um controle de
  versões da sua database
• EF é um dos frameworks que mais recebe
  atualizações
Perguntas?

• Perguntas, dúvidas, criticas, convites para
  jogar RPG?

Más contenido relacionado

Similar a Trabalhando com banco de dados e Entity Framework

Clean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimentoClean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimentoPaulo Henrique da Silva
 
Zend Framework Estrutura e TDD
Zend Framework Estrutura e TDDZend Framework Estrutura e TDD
Zend Framework Estrutura e TDDPHP Day Curitiba
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadospichiliani
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadospichiliani
 
Persistência e Bancos de Dados com Xamarin.Forms
Persistência e Bancos de Dados com Xamarin.FormsPersistência e Bancos de Dados com Xamarin.Forms
Persistência e Bancos de Dados com Xamarin.FormsThiago Bertuzzi
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento ORNécio de Lima Veras
 
Persistencia de dados com xamarin
Persistencia de dados com xamarinPersistencia de dados com xamarin
Persistencia de dados com xamarinThiago Bertuzzi
 
SQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceSQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceLuis Borges Gouveia
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Mario Guedes
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Boas práticas com jpa 2 e hibernate flisol 2012
Boas práticas com jpa 2 e hibernate   flisol 2012Boas práticas com jpa 2 e hibernate   flisol 2012
Boas práticas com jpa 2 e hibernate flisol 2012Frederico Maia Arantes
 
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQLpgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQLRaphael Silva
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para phpFabio B. Silva
 

Similar a Trabalhando com banco de dados e Entity Framework (20)

Clean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimentoClean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimento
 
Zend Framework Estrutura e TDD
Zend Framework Estrutura e TDDZend Framework Estrutura e TDD
Zend Framework Estrutura e TDD
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Aula 01 Revisão
Aula 01   RevisãoAula 01   Revisão
Aula 01 Revisão
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dados
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dados
 
Persistência e Bancos de Dados com Xamarin.Forms
Persistência e Bancos de Dados com Xamarin.FormsPersistência e Bancos de Dados com Xamarin.Forms
Persistência e Bancos de Dados com Xamarin.Forms
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
 
Persistencia de dados com xamarin
Persistencia de dados com xamarinPersistencia de dados com xamarin
Persistencia de dados com xamarin
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
SQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceSQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open source
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Boas práticas com jpa 2 e hibernate flisol 2012
Boas práticas com jpa 2 e hibernate   flisol 2012Boas práticas com jpa 2 e hibernate   flisol 2012
Boas práticas com jpa 2 e hibernate flisol 2012
 
Ip 01 logica
Ip 01 logicaIp 01 logica
Ip 01 logica
 
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQLpgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
 
Java: Por onde começar nos dias de hoje?
Java: Por onde começar nos dias de hoje?Java: Por onde começar nos dias de hoje?
Java: Por onde começar nos dias de hoje?
 
Curso Informática - PIB
Curso Informática - PIBCurso Informática - PIB
Curso Informática - PIB
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para php
 
C # banco de dados
C # banco de dadosC # banco de dados
C # banco de dados
 

Más de Priscila Mayumi

Do 0 a estar online no Google App Engine
Do 0 a estar online no Google App EngineDo 0 a estar online no Google App Engine
Do 0 a estar online no Google App EnginePriscila Mayumi
 
Bolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíBolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíPriscila Mayumi
 
OOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaOOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaPriscila Mayumi
 
OOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovOOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovPriscila Mayumi
 
OOD - Princípio Open/Closed
OOD - Princípio Open/ClosedOOD - Princípio Open/Closed
OOD - Princípio Open/ClosedPriscila Mayumi
 
Hangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade únicaHangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade únicaPriscila Mayumi
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingPriscila Mayumi
 
Oportunidades para desenvolvedores
Oportunidades para desenvolvedoresOportunidades para desenvolvedores
Oportunidades para desenvolvedoresPriscila Mayumi
 
Banco de dados de grafos
Banco de dados de grafosBanco de dados de grafos
Banco de dados de grafosPriscila Mayumi
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrationsPriscila Mayumi
 
1ª madrugada de testes net coders coding dojo
1ª madrugada de testes net coders   coding dojo1ª madrugada de testes net coders   coding dojo
1ª madrugada de testes net coders coding dojoPriscila Mayumi
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonPriscila Mayumi
 

Más de Priscila Mayumi (18)

Microsoft MTACs
Microsoft MTACsMicrosoft MTACs
Microsoft MTACs
 
Entity framework 7
Entity framework 7Entity framework 7
Entity framework 7
 
Do 0 a estar online no Google App Engine
Do 0 a estar online no Google App EngineDo 0 a estar online no Google App Engine
Do 0 a estar online no Google App Engine
 
Bolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíBolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aí
 
OOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaOOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de Dependência
 
OOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovOOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de Liskov
 
OOD - Princípio Open/Closed
OOD - Princípio Open/ClosedOOD - Princípio Open/Closed
OOD - Princípio Open/Closed
 
Hangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade únicaHangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade única
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computing
 
Conhecendo o Firefox OS
Conhecendo o Firefox OSConhecendo o Firefox OS
Conhecendo o Firefox OS
 
Oportunidades para desenvolvedores
Oportunidades para desenvolvedoresOportunidades para desenvolvedores
Oportunidades para desenvolvedores
 
PHP no Windows Azure
PHP no Windows AzurePHP no Windows Azure
PHP no Windows Azure
 
Banco de dados de grafos
Banco de dados de grafosBanco de dados de grafos
Banco de dados de grafos
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrations
 
1ª madrugada de testes net coders coding dojo
1ª madrugada de testes net coders   coding dojo1ª madrugada de testes net coders   coding dojo
1ª madrugada de testes net coders coding dojo
 
Ninja migrations
Ninja migrationsNinja migrations
Ninja migrations
 
Ruby versus Python
Ruby versus PythonRuby versus Python
Ruby versus Python
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 

Trabalhando com banco de dados e Entity Framework

  • 1. Trabalhando com banco de dados e Entity Framework
  • 2. Me :D Priscila Mayumi Sato (aka MayogaX) Líder do .Net Coders Microsoft Comunity Contributor
  • 3. Banco de Dados é seu amigo • Quase todo tipo de sistema precisa guardar dados • No inicio pode assustar ter que lidar com um mundo diferente, o do banco de dados • Dados também poderiam ser guardados de outra forma, mas bancos relacionais são seus amigos
  • 4. Banco de Dados é seu amigo
  • 5. Banco de Dados é seu amigo • Você não precisa de desenhos bonitinhos e amigáveis para deixar de ter medo de banco de dados • Não, eu não li o livro, não sei se é bom • Prometo que vou lê-lo em breve :p
  • 6. Banco de Dados é seu amigo • Tabelas são dados organizados de forma vertical separados em colunas, cada célula é um campo pertencente a uma dupla de linha e coluna e contém um dado.
  • 7. Banco de Dados é seu amigo • Pronto, sabemos tudo já
  • 8. Banco de Dados é seu amigo
  • 9. Banco de Dados é seu amigo • Tá, pode até parecer confuso, mas não é. • Você vai precisar aprender a lidar com banco de dados relacional #fato • Mas tudo pode ser mais fácil (ainda mais para quem está começando)
  • 11. Entity Framework é mágico • EF é um ORM da Microsoft, open source o/ • ORMs são frameworks que fazem o trabalho sujo entre a sua aplicação e o banco de dados • É bom que você estude querys, normalização, consistencia, etc e tal, mas no dia a dia pode pedir pro EF te ajudar :D
  • 12. Entity Framework é mágico • Há 3 formas de se trabalhar com EF: • Code First • Model First • Database First
  • 13. Entity Framework é mágico • Code First • Você codifica as suas classes POCO e ele automágicamente cria as tabelas para você • Você pode definir como serão as tabelas via código com Data Anotation ou Fluent Api
  • 14. Entity Framework é mágico • Model First • Você vai modelar suas entidades em uma interface visual • O banco de dados vai ser gerado depois com base no seu modelo
  • 15. Entity Framework é mágico • Database First • Quando você já tiver um banco de dados criado pode importá-lo, e até escolher que tabelas vai querer usar • Caso já tenha procedures elas também poderão ser importadas
  • 16. Entity Framework é mágico • Manipular suas entidades é simples • Códigos em Linq to Entity ou Lambda Expressions • Tratar cada tabela como uma lista de classes, cada registro uma instancia de uma classe
  • 17. DEMO
  • 18. Vantagem • Desenvolvimento mais rápido • Trabalhar com orientação a objetos mesmo ao manipular tabelas • Com o EF é possível ter um controle de versões da sua database • EF é um dos frameworks que mais recebe atualizações
  • 19. Perguntas? • Perguntas, dúvidas, criticas, convites para jogar RPG?