Perguntas frequentes sobre EverClassy Dataset

O que é o EverClassy Dataset?

EverClassy Dataset é um componente VCL dataset que é populado com objetos Delphi nativos ao invés de registros recuperados de um sistema de banco de dados, por exemplo. O componente tem alguma semelhança com o TClientDataset no sentido que ambos são datasets em memória, mas o EverClassy Dataset não depende de um componente secundário como o TDatasetProvider.

Qual sua utilidade?

O EverClassy Dataset torna possível interoperar componentes dataware, tais como o TDBGrid, com objetos Delphi nativos. Este recurso é especialmente útil quando o desenho de uma aplicação é dirigido pelas diretrizes da orientação o objetos. Neste cenário a aplicação é construída com uma grande quantidade de objetos que precisarão ser manipulados em uma GUI. Com o EverClassy Dataset é possível usar os componentes dataware para operar diretamente como editores dos objetos da aplicação.

Por que eu teria um desenho de aplicação puramente OO?

Por que o Delphi é uma linguagem de programação OO que provê uma larga e poderosa gama de recursos que não podem ser completamente aproveitados em um desenho relacional. Herança, polimorfismo, abstração, delegação e muitas outras ferramentas de programação que somente estão disponíveis quando uma aplicação é projetada e construída com base na orientação a objetos. Projetos orientados a tabelas são limitados e grandemente tolhem o programador, tornando a codificação tediosa, dispendiosa e repetitiva.

Posso usar absolutamente qualquer objeto com o EverClassy Dataset?

Sim, absolutamente qualquer objeto pode ser operado por este dataset, sem exceções!

Como os objetos são manipulados pelo EverClassy Dataset?

Os objeto são mapeados para registros do dataset enquanto suas propriedades são mapeadas para os fields do dataset. Por exemplo, considere que uma lista de objetos é atribuída como fonte para o EverClassy Dataset. Se esta lista tem 50 itens, o dataset mostrará 50 registros. Cada registro é mapeado a um item. Os fields do dataset são associados a propriedades dos objetos por convenção de nomes. Por exemplo, um field de data chamado BirthDate será manipulado por um field de dataset com o mesmo nome. Imaginando um TDBGrid com uma coluna ligada a este field, cada vez que o usuário alterar o valor da coluna, o valor que é recebido pelo field é imediatamente atribuído à propriedade correspondente na instância correspondente ao registro atual.

O que ocorre se eu declarar um field que não corresponda a nenhuma propriedade?

Este field irá operar precisamente como qualquer outro field, mas seu valor será mantido em um buffer que será perdido quando o dataset for fechado. Este componente pode ser muito útil quando o programador precisa de fields que existam apenas como auxiliares para a construção de GUIs mais sofisticadas.

Posso ter itens de diferentes classes em uma coleção manipulada pelo dataset?

Sim, não existem restrições a respeito de quais objetos podem ser manipulados pelo EverClassy Dataset. Cada registro pode ser mapeado para uma instância de classe diferente independentemente dos outros.

Posso ter um objeto que tenha subobjetos?

Sim, é possível adicionar um TDatasetField ao dataset e atribuir este field a uma segunda instância de TECDataset. Este segundo dataset operará como um dataset de detalhe, manipulando os subobjetos.

Preciso de um dataset agora que o Delphi conta com os LiveBindings?

Sim, os LiveBindings não dependem de um dataset quando não existem grids envolvidos, mas em uma GUI que usa tal componente, um dataset ainda é necessário. O dataset é útil para manipular coletividades de valores e os LiveBindings dependem deles para popular um grid.


Fale conosco

Em caso de dúvida ou questão, por favor, envie um e-mail para support@inovativa.com.br. Será uma enorme satisfação fornecer toda a informação necessária a respeito de nossos produtos!