DevMedia
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login

Camada de Persistência: Introdução ao DAO Pattern

Esse artigo explica um pouco sobre a camada de persistência DAO. Será mostrada uma introdução ao DAO Pattern.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você poderia comentar o que não lhe agradou?

Confirmo meu voto negativo
A Programação Orientada a Objetos é um paradgma de programação que pode muito bem solucionar um dos maiores problemas de qualquer programador: a mudança. O usuário, na maioria das vezes não sabe realmente o que ele precisa, ou não entendemos ao certo as suas necessidades e isso ocasiona diversas mudanças durante o ciclo de vida do software. É necessário então desenvolver uma aplicação flexível, pronta para mudar.
A POO nos permite isso, mas hoje vivemos a realidade em que a maioria dos bancos de dados das empresas são relacionais e não armazenam objetos. Todavia, quando criamos uma instância do nosso objeto e, na aplicação configuramos seu estado, temos a necessidade de gravar tudo isso que foi feito.
Precisamos de algo que pegue esse objeto e envie ele para o banco de tal forma que não precisemos ficar montando sentenças SQL na aplicação como INSERT, SELECT, UPDATE ou DELETE. Neste momento, que quase todas as aplicações devem passar, surge a necessidade da criação de uma Camada de Persistência.
A arquitetura comumente usada hoje em dia é a arquitetura multicamadas. Temos então a interface, camada de negócios e banco de dados. A Camada de Persitência ficará então entre a camada de negócios e o bando de dados.
As operações básicas de uma camada de persistência são conhecidas como CRUD (Create, Retrieve(ou Read), Update e Delete). A camada de persistência deve fazer essas operações de forma transparente para a aplicação. Isso faz com que a aplicação fique mais enxuta para tratar os problemas do usuário e não problemas com armazenamento e recuperação de dados.
Existe um padrão para a criação desta camada de persistência. Ele se chama DAO Pattern.
O DAO(Data Access Object) Pattern propõe que tenhamos todas essas operações CRUD de forma transparente.
Suponhamos que temos que criar um cadastro de clientes. Teriamos então uma classe da seguinte forma:
 
type
  TCliente = class
  public
    cpf: String;
    nome: String;
  end;
 
O DAO desta classe seria:
 
type
  TClienteDAO = class
  public
    procedure insertCliente(cliente: Cliente);
    function findCliente(cpf: String): TCliente;
    procedure updateCliente(cliente TCliente);
    procedure deleteCliente(cliente: TCliente);
  end;
 
Esta classe DAO, como se vê, é responsável por encapsular as operações CRUD. Dentro dela serão montadas as sentenças SQL necessárias para inserir, recuperar, atualizar e deletar os registros da tabela.
Na interface poderiamos fazer o seguinte então:
 
No botão pesquisar:
var
  cliente: TCliente;
  cliDAO: TClienteDAO;
begin
  cliente := cliDAO.findCliente(Edit1.Text);
  EditCpf.Text := cliente.cpf;
  EditNome.Text := cliente.nome;
end;
 
No botão inserir:
begin
  try
    cliDAO.insertCliente(cliente);
  except
    //tratamento da exception
  end;
end;
 
A aplicação fica muito mais legível desta forma.
 
 
Vallew galera. Isso é uma pequena parte do que tenho pesquisado sobre o assunto.
 
Abraço.
 
Dadonas
   
 
 
 


Danilo Dadonas(dadonas@democrata.com.br) é graduado em Sistemas de Informação. Atua como desenvolvedor Senior para uma indústria calçadista.

O que você achou deste post?
Conhece a assinatura MVP?
Publicidade
Serviços

Mais posts