Artigo Clube Delphi 107 - Criando aplicações com histórico em XML
Modelagem e criação do banco de dados de exemplo; Conceitos básicos de boas práticas; Criação de uma aplicação que faça reutilização de consultas.
Delphi Core
Criando aplicações comhistórico em XML
Saiba como reaproveitaras últimas consultas do seu banco de dados
| Neste artigo veremos |
| · Modelagem e criação do banco de dados de exemplo; · Conceitos básicos de boas práticas; · Criação de uma aplicação que faça reutilização de consultas. |
| Qual a finalidade? |
| · Reaproveitar as últimas consultas ao banco de dados, diminuindo o tráfego desnecessário. |
| Quais situações utilizam esses recursos? |
| · Qualquer software que trabalhe com a tecnologia DataSnap pode utilizar destes recursos. |
Resumo do DevMan
Cada vezmais as empresas e equipes de desenvolvimento almejam por qualidade desoftware. E um dos quesitos que sempre é posto em pauta, é relacionadodiretamente ao desempenho do sistema. E como se sabe, muitos desenvolvedoresainda pecam nesse quesito, principalmente se tratando de consultas. Nesteartigo será mostrada uma solução elegante que diminui o tráfego de consultas narede utilizando a tecnologia DataSnap e que consequentemente é uma alternativapara diminuição de futuros problemas em consultas, podendo aumentar aperformance do seu software.
No desenvolvimento de uma aplicação, seja de pequeno, médio ougrande porte, a implementação de consultas é obrigatória, porém, quantas vezespor dia um usuário comum realiza uma mesma consulta simples no seu software,buscando por dados de documentos ou localização por exemplo?
Como sabemos, para cada consulta, é aberta uma transação nobanco de dados, que gera de alguma forma um tráfego muitas vezes repetitivo edesnecessário. Uma solução que é comumente adotada por muitos desenvolvedores,é disparar uma consulta na abertura da tela de consulta de modo que sejamtrazidos todos os dados, ou grande parte deles de uma única vez, fazendo comque seu carregamento seja lento e causando justamente este tipo de tráfegodesnecessário, visto que muitas vezes a informação a se saber em muitos casos émínima.
No presente artigo, iremos desenvolver uma aplicação de agendautilizando banco de dados, e que aborda de forma prática uma alternativa paradiminuir o tráfego desnecessário, utilizando recursos de carregamento emmemória e XML presentes na tecnologiaDataSnap.
Nota do DevMan
XML é a abreviação da expressão eXtensible Markup Language. Esta édenominada como linguagem de marcação e trabalha baseada em TAGS. Maisinformações sobre esta linguagem e padrões detalhados podem ser encontrados nosite: http://www.w3.org/XML
Levantando os requisitosnecessários
Para o desenvolvimento de nossa aplicação iremos utilizar o RAD Studio 2009, juntamente com o bancode dados Firebird em sua versão 1.5,porém esta o Delphi trabalha com a versão cinco do framework dbExpress que infelizmente não possui um driver nativopara a conexão com o Firebird. Sendoassim, utilizaremos uma versão de driver free, criada pelo desenvolvedor Thiago Borgesde Oliveira para o desenvolvimento da nossa aplicação. O download do driverestá disponível no link: http://www.tbosystems.bluehosting.com.br/dbx4/tbodbxfb_install_0_9_d2009.exe.
Instalando o driverde conexão
Após ter realizado o download,iremos proceder com a instalação do driveratravés do auto-instalador. Execute-o, e na primeira tela clique no botão next, na segunda tela selecione odiretório de instalação de sua preferência e em seguida avance novamente. Porúltimo, clique em Install para que oprocesso seja concluído. Se tudo ocorrer bem o seu resultado será o mesmo da Figura 1.
Figura 1. Finalização da instalação do driver
Nota: Vou detalhar alguns processosnecessários para a conexão entre o banco de dados e o DBExpress mais adiante, porém, é altamente recomendável que visitema página do autor disponível no link: http://www.tbosystems.bluehosting.com.br/dbx4/para assim tomarem nota dos demais requisitos, relativos a distribuição porexemplo.
Agora que finalizamos a instalação do driver a ser utilizado na aplicação, passaremos para o processo demodelagem e criação do banco de dados.
Modelando e criando obanco de dados
Como estamos desenvolvendo uma aplicação relativamente pequena,iremos criar três tabelas no nosso banco de dados. Observe o nosso exemploproposto na Figura 2.
Figura 2. Modelagem do sistema
Começaremos descrevendo a tabela de ENDERECO que possui dados comuns a qualquer localização, noentanto, é possível percebermos que o número do endereço (pertencente àresidência) não se encontra nesta tabela e sim na tabela PESSOA. A razão para tal fato, é que deste modo podemos incluir omesmo endereço para qualquer contato cadastrado, bastando apenas mudar o númeroda residência e evitando assim, a necessidade de termos que recadastrá-lo casohaja uma residência na mesma localização e é claro, com numeração diferenciada.
A tabela PESSOA em si, refere-se aos contatos queserão cadastrados, portanto trata-se da própria agenda, e será o principalobjeto do banco de dados, referenciando a tela principal do nosso exemplo. Epor último a tabela TELEFONE seráfilha da tabela PESSOA,possibilitando assim a inclusão de diversos telefones para um mesmo contato.
Para acriação do nosso banco de dados, utilize um administrador de sua preferênciacomo o FlameRobin, IBExpert ou IBOConsole para facilitar sua criação através do script de metadata. O script que utilizaremos para a criação do banco dedados encontra-se na Listagem 1conforme pode ser observado.
Listagem 1. Script do banco dedados
SET SQL DIALECT 3;
SET NAMES WIN1252;
SET CLIENTLIB'<diretÓrio da="" instalaÇÃo="" do="" firebird="">\BIN\fbclient.dll';</diretÓrio>
CREATE DATABASE '<diretÓrio do="" banco="" de="" dados="">\AGENDA.FDB'</diretÓrio>
USER 'SYSDBA' PASSWORD'masterkey'
PAGE_SIZE 4096
DEFAULT CHARACTER SET WIN1252;
CREATE TABLE PESSOA
(IDPESSOA INTEGER NOTNULL,
PESSOA VARCHAR(100) NOTNULL,
IDENDERECO INTEGER,
DATA_NASCIMENTO DATE,
NUMERO " [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo