Artigo no estilo: Curso

Por que eu devo ler este artigo:O presente artigo dá sequência à abordagem que trata do EntityDAC, produto recém-lançado pela empresa Devart, que atua como uma ferramenta de mapeamento objeto-relacional voltada exclusivamente ao contexto Delphi.

Logo, sua intenção fundamental é a de prover um mecanismo facilitador no que diz respeito à construção de aplicações de banco de dados, norteadas pela essência do paradigma da POO (Programação Orientada a Objetos), mais especificamente no tratamento da relação a ser estabelecida entre os objetos da aplicação e as tabelas de bancos de dados relacionais.

Neste sentido, o aprendizado prático do EntityDAC se torna útil inicialmente pela plena visualização dos pontos que diferem uma abordagem deste tipo em relação a tradicional e, posteriormente, na colaboração para sua utilização no cotidiano do desenvolvedor Delphi.

De forma simples, o EntityDAC pode ser definido como um framework ORM para Delphi. Esta sigla faz referência ao termo em inglês Object-Relational Mapping que, numa tradução livre para o português, seria algo como “Mapeamento Objeto-Relacional”.

No desenvolvimento de software, este termo caracteriza uma técnica que está associada ao uso da Programação Orientada a Objetos (POO) no provimento de aplicações de banco de dados. Neste cenário, o contraponto existente numa construção OO, em relação a uma construção tradicional, se dá essencialmente pelo envolvimento de Entidades (classes) e suas instâncias (objetos) na aplicação, ao invés de dados simples provindos de determinada fonte de dados.

Esse fator dá origem a uma impedância natural existente entre o contexto de objetos da aplicação com o uso de um banco de dados relacional, que somente opera dados singulares.

Em outras palavras, a instância de uma entidade possui uma estrutura complexa o suficiente para conter desde atributos simples a entidades aninhadas, o que impede a persistência direta dessas informações numa tabela do banco de dados, sendo necessária uma tratativa pontual.

Logo, o mapeamento objeto-relacional vem com o intuito de sanar este impedimento, mapeando os elementos de banco de dados, tal como Tabelas e Views, para classes de negócio que estarão presentes no código da aplicação.

No geral, o mapeamento realizado pelo EntityDAC dá origem a classes descendentes de um tipo específico, provenientes de seu próprio contexto. Tal tipo refere-se a classe básica do framework, denominada TEntity.

Todavia, visando dar uma maior abertura e liberdade ao desenvolvedor, tal ancestral pode ser plenamente substituído pelo tipo TObject, nativo do Delphi. Neste caso, o resultado final obtido é um conjunto de classes tidas como puras, uma vez que não apresentam dependência direta com classes fora do escopo do Delphi.

Com o provimento de ambos os cenários, a intenção do EntityDAC é tornar seu uso facilitado tanto em novas construções quanto em projetos já existentes.

Sob o aspecto do Delphi, o uso de classes remete ao uso de todos os recursos do paradigma da Orientação a Objetos, tais como herança, polimorfismo e encapsulamento. Além disso, o EntityDAC é tido como um framework pelo fato de prover um conjunto de classes e componentes bem definidos que interagem entre si por um propósito em comum que, neste caso, é o próprio mapeamento objeto-relacional.

Terminologia EntityDAC

Em se tratando de um produto de características peculiares, o EntityDAC carrega consigo um agrupamento de terminologias que estão associadas à sua área de atuação. Em função disso, para o início de seu estudo, o pleno conhecimento e entendimento de tais termos torna-se algo essencial para o bom aproveitamento de seus recursos na prática, assegurando uma utilização ideal por parte do desenvolvedor. A seguir são então pontuados alguns dos termos mais utilizados no cenário do framework.

· Model (Modelo) - Em suma, refere-se à representação de elementos e ambientes que estão inseridos ao âmbito de trabalho do EntityDAC.

· Database Model (Modelo de Banco de Dados) - Representação do modelo de dados relacional por meio do conjunto de elementos presentes no banco de dados, tais como suas tabelas (e relacionamentos), campos (Fields), visões (Views), etc.

· Object Model (Modelo de Objeto) - Representação do conjunto de classes Delphi relacionadas ao negócio. Na literatura do EntityDAC, é também tratado apenas como Modelo.

· Meta-Model (Modelo de Metadados) - Representa um conjunto de classes Delphi tidas como “especiais” ...

Quer ler esse conteúdo completo? Tenha acesso completo