FireDAC: Crie uma aplicação de acesso a dados com VCL e FireMonkey
Aprenda neste artigo como utilizar o FireDAC para realização de cadastros e como reutilizar um mesmo Datamodule da VCL em aplicações FireMonkey
Também teremos uma visão das características do FireDAC, seus principais componentes, o porquê que ele deve ser adotado para novos projetos com banco de dados e a razão de considerarmos a migração de sistemas existentes com outros mecanismos para o FireDAC. Aprenderemos algumas boas práticas para a confecção de interfaces e também dicas para o desenvolvimento de aplicações Client-Server.
Também veremos como utilizar um mesmo DataModule para aplicações VCL e FireMonkey. No fim, converteremos nosso formulário FireMonkey para o formato Metropolis UI, a plataforma gráfica do Windows 8.
O Delphi desde o seu surgimento em 1994 tem se caracterizado por ser a ferramenta mais produtiva para o desenvolvimento de aplicações com banco de dados. Devido ao seu estilo RAD e algumas classes muito bem projetadas como a TDataSet e o TField, fez com que se tornasse uma ferramenta praticamente imbatível nessa área.
Quando surgiu o Delphi, o principal conjunto de componentes de acesso a dados era o BDE (Borland Database Engine). Na versão do Delphi 6 surgiu a suíte de componente chamada de dbExpress, que até a versão XE2, era a principal engine de banco de dados no Delphi. Porém, a partir da versão XE3 surgiu o FireDAC, que trouxe uma grande evolução neste quesito.
Recomenda-se fortemente que novos projetos iniciados com o Delphi façam uso do FireDAC para o acesso a dados. O BDE e o dbExpress ainda estão presentes no conjunto de componentes do Delphi, porém, não serão mais evoluídos com a ferramenta.
CRUD
CRUD é o acrônimo para Create, Read, Update, Delete. Ou seja, são as quatro principais operações utilizadas nos bancos de dados relacionais. Representam respectivamente as instruções de Insert, Select, Update e Delete.
FireDAC
FireDAC é o nome dado a versão da Embarcadero após a aquisição da suíte AnyDAC, que foi integrada tanto ao Delphi quanto ao C++ Builder. No Delphi, o FireDAC está disponível a partir da versão XE3 através de um instalador a parte, já na versão XE5, a suíte encontra-se presente na instalação padrão.
Trata-se de um conjunto de componentes de alta performance e fácil utilização que provêm conexão com diferentes bancos de dados, tanto locais quanto corporativos. Cada banco de dados possui um driver e o FireDAC trabalha com cada um deles de forma diferente. Os drivers do FireDAC são nativos para cada banco em particular e ainda possuem integração aos tipos ODBC e dbExpress.
Para quem trabalha com a arquitetura multicamadas com Delphi e DataSnap (BOX 1), ou servidores REST (BOX 2), basta migrar a camada relativa ao Servidor de aplicações de dbExpress para FireDAC, pois, o componente TFDQuery é um TDataSet, portanto, é compatível com o TDataSetProvider. Na camada Cliente, o TClientDataSet permanece sem necessidade de qualquer alteração.
BOX 1. DataSnapO DataSnap é o principal Framework para o desenvolvimento multicamadas no Delphi. Servidores de aplicação DataSnap podem ser desenvolvidos tanto em Delphi quanto em C++ Builder, porém, a grande vantagem está na aplicação Cliente, que pode ser desenvolvida em qualquer linguagem de programação que possua suporte à JSON. O Delphi 2009 trouxe uma grande mudança na arquitetura do DataSnap.
A partir desta versão a tecnologia COM foi abolida, mas algo tinha que substituí-la. Neste caso, como o Delphi já possuía uma tecnologia de acesso a dados muito eficiente, totalmente orientada a objetos e 100% escrita na própria linguagem, o dbExpress, a solução adotada foi criar um novo driver voltado ao DBX, no entanto, sua responsabilidade não seria a de se conectar a um banco de dados, mas sim, a um servidor de aplicação. Assim, a partir do Delphi 2009, a conexão do cliente com o servidor de aplicação passou a ser realizada utilizando o dbExpress trafegando os dados utilizando protocolo TCP/IP.
BOX 2. RESTREST é a abreviação de Representational State Transfer ou transferência de estado representacional. Teve seu surgimento a partir da tese de doutorado sobre a Web escrita por Roy Fielding, que foi um dos idealizadores do protocolo HTTP.
Alguns entendem que o REST é um novo protocolo, outros o chamam de arquitetura e alguns defendem que ele é apenas uma filosofia, uma forma de pensar, um estilo de projetar uma aplicação. O REST é uma boa prática, onde o principal objetivo é construir aplicações fracamente acopladas, voltadas principalmente para o ambiente Web.
O FireDAC é um framework que possui um conjunto de classes e componentes TDataSet, semelhante aos engines tradicionais do Delphi. Além disso, este possibilita o desenvolvimento de aplicações para múltiplos banco de dados de forma RAD, algo que o dbExpress tentou fazer, porém era complicado, afinal tínhamos de que fazer várias configurações como, por exemplo, o mapeamento de campos TFields de acordo com cada banco utilizado.
Uma das principais vantagens do FireDAC é a sua alta performance de acesso e a enorme quantidade de recursos e configurações disponíveis.
Os bancos de dados na qual conectam-se de forma nativa são os seguintes:
· MySQL
· Microsoft SQL Server
· Oracle Database
· InterBase
· PostgreSQL
· DataSnap
· SQLite
· Sybase SQL Anywhere
· Microsoft Access
· IBM DB2 Server
· Firebird
· Advantage Database
Características" [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo