Estudos gratuitos da ER Soluções WebVer outros conteúdos grátis
ER Soluções WebEstudos · Patterns of Enterprise Application Architecture

10.4. Data Mapper

Camada que move dados entre objetos e banco, isolando os dois.

Objetos de domínio à esquerda, banco à direita e um mapeador no meio; domínio não sabe do banco
O domínio não conhece SQL. O mapper conhece os dois lados.

Resumo

Perguntas-chave

responda de cabeça, depois abra
Qual o objetivo do Data Mapper?
Permitir que modelo de objetos e esquema do banco evoluam de forma independente.
O domínio conhece o mapper?
Não. Se precisar de finders, usa uma interface definida no domínio (Separated Interface).
Quais padrões costumam acompanhá-lo?
Identity Map, Unit of Work, Lazy Load e Metadata Mapping.

Exercícios de fixação

0/5 respondidas
1.
O modelo tem Pessoa com Endereco (Value Object) e subclasses Funcionario e Cliente; o banco é legado e normalizado de outro jeito. Qual padrão de fonte de dados?
2.
Em um Data Mapper puro, quem sabe que o banco existe?
3.
O domínio precisa buscar clientes inadimplentes sem depender do mapper concreto. Como?
4.
Qual o custo do Data Mapper?
5.
Durante uma transação, como o Data Mapper evita gravar objetos que não mudaram e carregar o mesmo registro duas vezes?
Seu progresso fica salvo neste navegador.