SlideShare uma empresa Scribd logo
Os padrões arquiteturais de Fontes de Dados
descrevem a forma como a camada da lógica
de negócio se comunica com a base de
dados.
Na resolução do problema e importante saber
que cada padrão representa uma escolha que,
uma vez tomada, será difícil de reestruturar
para outra
Padrões Arquiteturais de Fontes de Dados
Existem várias técnicas para incluir o SQL na
linguagem de programação, no entanto, nenhuma é
relativamente simples.
É necessário separar os acessos SQL da lógica
de negócio:
Programadores - Não devem ter acesso direto ao
BD porque muitas vezes não dominam a linguagem
SQL de forma eficiente;
DBAs - Necessitam ter acesso ao SQL de uma
forma sistemática para otimizar o banco de dados.
Padrões Arquiteturais de Fontes de Dados
As Data Gateways são classes com métodos que
facultam acesso a registros da base de dados.
As classes dos padrões da Lógica de Negócio
invocam os métodos das Data Gateways para
interagir com a base de dados.
As Data Gateways podem ser implementadas de
duas formas:
• Row Data Gateway – um objeto para cada registro
da tabela;
• Table Data Gateway – um objeto para a tabela.
Data Gateways
Um Gateway de Linha de Dados é um padrão de
arquitetura que utiliza um objeto que representa
exatamente uma linha de registro do banco de dados
em memória.
A estrutura dessa entidade é exatamente igual a
estrutura física da tabela de modelo relacional.
Gateway de Linha de Dados
(Row Data Gateway)
Vantagens
• O Gateway de Linha de Dados mantém os
valores de suas propriedades ao longo do seu
ciclo de vida, não sendo necessário passar
todos os valores de suas propriedades ao longo
de seu ciclo de vida.
Desvantagens
• O padrão faz com que aumentamos o consumo
de memória, pois se instancia naturalmente
mais objetos em um sistema, tendo em vista
que cada objeto agora representará um único
registro da tabela.
Utilização
• Onde se usa? Usa-se com maior frequência
quando se está utilizando o “Roteiro de
Transação”, pois ele decompõe eficientemente o
código de acesso ao banco de dados e permite
que este seja reutilizado facilmente em
diferentes roteiros de transação.
Utilização (II)
• Onde não se usa? Quando se está utilizando o
“Modelo de Domínio”, pois é melhor utilizar o
Registro Ativo para isolar os objetos de domínio
da estrutura do banco de dados, que faz o
mesmo trabalho sem uma camada adicional de
código.
Gateway Linha de Dados (RDG) x Registro
Ativo (AR)
• A diferença entre estes dois padrões é que o
padrão RDG não possui nenhum método
pertencente ao modelo de negócios, somente
métodos de acesso à base de dados. Quando é
adicionado a lógica de negócio a um RDG então
temos um Registro Ativo.
• EXEMPLO
 Obrigado à todos,
FIM
28/08/13

Mais conteúdo relacionado

Semelhante a Gateway de linha de dados

Banco de dados parte 01
Banco de dados parte 01Banco de dados parte 01
Banco de dados parte 01
Barbara Beatriz Santos
 
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas ColaborativosApresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
Mozart Dornelles Claret
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
Leclerc Victer
 
BD I - Aula 07 A - Projetando BD
BD I - Aula 07 A - Projetando BDBD I - Aula 07 A - Projetando BD
BD I - Aula 07 A - Projetando BD
Rodrigo Kiyoshi Saito
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados
Deep Tech Brasil
 
C # banco de dados
C # banco de dadosC # banco de dados
C # banco de dados
Cleto Lima de Andrade
 
2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados
2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados
2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados
Rodrigo Kiyoshi Saito
 
Banco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e RefatoraçãoBanco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e Refatoração
elliando dias
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
Suzana Viana Mota
 
Padrão de Arquitetura de Software Corporativa
Padrão de Arquitetura de Software CorporativaPadrão de Arquitetura de Software Corporativa
Padrão de Arquitetura de Software Corporativa
Hilton Menezes
 
Slide da aula 04
Slide da aula 04Slide da aula 04
Slide da aula 04
AndrezaRaquel1
 
Acessos Uniformes à Sistemas NoSQL
Acessos Uniformes à Sistemas NoSQLAcessos Uniformes à Sistemas NoSQL
Acessos Uniformes à Sistemas NoSQL
thomasdacosta
 
SQL Oracle
SQL OracleSQL Oracle
SQL Oracle
Pablo Garcia
 
Ado.net
Ado.netAdo.net
No sql o_que_e_isso.key
No sql o_que_e_isso.keyNo sql o_que_e_isso.key
No sql o_que_e_isso.key
Antonio Lazaro Carvalho Borges
 
Transição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e EstratégiasTransição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e Estratégias
Denodo
 
Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012
Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012
Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012
Diego Nogare
 
Apresentação: Padrões de Projetos para Persistência de Dados
Apresentação: Padrões de Projetos para Persistência de DadosApresentação: Padrões de Projetos para Persistência de Dados
Apresentação: Padrões de Projetos para Persistência de Dados
Luan Lima
 
ORM e EF
ORM e EFORM e EF
BDD
BDDBDD

Semelhante a Gateway de linha de dados (20)

Banco de dados parte 01
Banco de dados parte 01Banco de dados parte 01
Banco de dados parte 01
 
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas ColaborativosApresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
 
BD I - Aula 07 A - Projetando BD
BD I - Aula 07 A - Projetando BDBD I - Aula 07 A - Projetando BD
BD I - Aula 07 A - Projetando BD
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados
 
C # banco de dados
C # banco de dadosC # banco de dados
C # banco de dados
 
2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados
2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados
2019-2 - BD I - Aula 01 C - Introdução a Banco de Dados
 
Banco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e RefatoraçãoBanco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e Refatoração
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
Padrão de Arquitetura de Software Corporativa
Padrão de Arquitetura de Software CorporativaPadrão de Arquitetura de Software Corporativa
Padrão de Arquitetura de Software Corporativa
 
Slide da aula 04
Slide da aula 04Slide da aula 04
Slide da aula 04
 
Acessos Uniformes à Sistemas NoSQL
Acessos Uniformes à Sistemas NoSQLAcessos Uniformes à Sistemas NoSQL
Acessos Uniformes à Sistemas NoSQL
 
SQL Oracle
SQL OracleSQL Oracle
SQL Oracle
 
Ado.net
Ado.netAdo.net
Ado.net
 
No sql o_que_e_isso.key
No sql o_que_e_isso.keyNo sql o_que_e_isso.key
No sql o_que_e_isso.key
 
Transição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e EstratégiasTransição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e Estratégias
 
Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012
Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012
Codificando .Net e SQL PASS Chapter - Novidades de BI para SQL Server 2012
 
Apresentação: Padrões de Projetos para Persistência de Dados
Apresentação: Padrões de Projetos para Persistência de DadosApresentação: Padrões de Projetos para Persistência de Dados
Apresentação: Padrões de Projetos para Persistência de Dados
 
ORM e EF
ORM e EFORM e EF
ORM e EF
 
BDD
BDDBDD
BDD
 

Mais de Silvino Neto

Lei 811290
Lei 811290Lei 811290
Lei 811290
Silvino Neto
 
Implantando a governança de ti
Implantando a governança de tiImplantando a governança de ti
Implantando a governança de ti
Silvino Neto
 
Auditoria de sistemas de informação
Auditoria de sistemas de informaçãoAuditoria de sistemas de informação
Auditoria de sistemas de informação
Silvino Neto
 
Servidor proxy
Servidor proxy Servidor proxy
Servidor proxy
Silvino Neto
 
Conteúdos, Identidade Cultural e O Governo ao Alcance de Todos
Conteúdos, Identidade Cultural e O Governo ao Alcance de TodosConteúdos, Identidade Cultural e O Governo ao Alcance de Todos
Conteúdos, Identidade Cultural e O Governo ao Alcance de Todos
Silvino Neto
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
Silvino Neto
 
Apresentação java io
Apresentação java ioApresentação java io
Apresentação java io
Silvino Neto
 

Mais de Silvino Neto (7)

Lei 811290
Lei 811290Lei 811290
Lei 811290
 
Implantando a governança de ti
Implantando a governança de tiImplantando a governança de ti
Implantando a governança de ti
 
Auditoria de sistemas de informação
Auditoria de sistemas de informaçãoAuditoria de sistemas de informação
Auditoria de sistemas de informação
 
Servidor proxy
Servidor proxy Servidor proxy
Servidor proxy
 
Conteúdos, Identidade Cultural e O Governo ao Alcance de Todos
Conteúdos, Identidade Cultural e O Governo ao Alcance de TodosConteúdos, Identidade Cultural e O Governo ao Alcance de Todos
Conteúdos, Identidade Cultural e O Governo ao Alcance de Todos
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
 
Apresentação java io
Apresentação java ioApresentação java io
Apresentação java io
 

Gateway de linha de dados

  • 1.
  • 2. Os padrões arquiteturais de Fontes de Dados descrevem a forma como a camada da lógica de negócio se comunica com a base de dados. Na resolução do problema e importante saber que cada padrão representa uma escolha que, uma vez tomada, será difícil de reestruturar para outra Padrões Arquiteturais de Fontes de Dados
  • 3. Existem várias técnicas para incluir o SQL na linguagem de programação, no entanto, nenhuma é relativamente simples. É necessário separar os acessos SQL da lógica de negócio: Programadores - Não devem ter acesso direto ao BD porque muitas vezes não dominam a linguagem SQL de forma eficiente; DBAs - Necessitam ter acesso ao SQL de uma forma sistemática para otimizar o banco de dados. Padrões Arquiteturais de Fontes de Dados
  • 4. As Data Gateways são classes com métodos que facultam acesso a registros da base de dados. As classes dos padrões da Lógica de Negócio invocam os métodos das Data Gateways para interagir com a base de dados. As Data Gateways podem ser implementadas de duas formas: • Row Data Gateway – um objeto para cada registro da tabela; • Table Data Gateway – um objeto para a tabela. Data Gateways
  • 5. Um Gateway de Linha de Dados é um padrão de arquitetura que utiliza um objeto que representa exatamente uma linha de registro do banco de dados em memória. A estrutura dessa entidade é exatamente igual a estrutura física da tabela de modelo relacional. Gateway de Linha de Dados (Row Data Gateway)
  • 6. Vantagens • O Gateway de Linha de Dados mantém os valores de suas propriedades ao longo do seu ciclo de vida, não sendo necessário passar todos os valores de suas propriedades ao longo de seu ciclo de vida.
  • 7. Desvantagens • O padrão faz com que aumentamos o consumo de memória, pois se instancia naturalmente mais objetos em um sistema, tendo em vista que cada objeto agora representará um único registro da tabela.
  • 8. Utilização • Onde se usa? Usa-se com maior frequência quando se está utilizando o “Roteiro de Transação”, pois ele decompõe eficientemente o código de acesso ao banco de dados e permite que este seja reutilizado facilmente em diferentes roteiros de transação.
  • 9. Utilização (II) • Onde não se usa? Quando se está utilizando o “Modelo de Domínio”, pois é melhor utilizar o Registro Ativo para isolar os objetos de domínio da estrutura do banco de dados, que faz o mesmo trabalho sem uma camada adicional de código.
  • 10. Gateway Linha de Dados (RDG) x Registro Ativo (AR) • A diferença entre estes dois padrões é que o padrão RDG não possui nenhum método pertencente ao modelo de negócios, somente métodos de acesso à base de dados. Quando é adicionado a lógica de negócio a um RDG então temos um Registro Ativo.
  • 12.  Obrigado à todos, FIM 28/08/13