Página para Iniciantes
Delphi, dBase ou Paradox?
Então você vem usando
o Paradox há anos? Ou você não faz nada sem o dBase.
Você deveria abandonar tudo que você aprendeu com o passar
dos anos e começar a converter seus programas para Delphi? Isso
vai depender dos seus planos e da suas necessidades. Aqui tempos um pequeno
texto publicado pela Dr. Dob para sua análise, que foi impresso
em UK-DDG newsletter...
Em primeiro lugar, dBase, Paradox
e Delphi são baseados no mesmo BDE (Borland Database Engine). Então,
a tecnologia em si é a mesma para os três ambientes de desenvolvimento.
Apenas o formato da base de dados e a forma de desenvolver e programar
sua aplicação são diferentes. Todas as três
ferramentas são ambientes de desenvolvimento visual, em que o dBase
e o Delphi são two-way (Two-way Tools - capacidade de alternar entre
um form e seu código. Permite aos desenvolvedores trabalhar tanto
na edição de texto como no modo de design visual através
de total sincronização do código fonte com a representação
visual). Historicamente, o Paradox é uma ferramenta voltada para
o usuário final, enquanto o Delphi é mais orientado aos desenvolvedores.
Comparando-os, nós podemos descrever a seguir:
***
O Borland Database Engine é
o coração do Delphi e suas aplicações com banco
de dados usando o mesmo database engine usado pelo Paradox e dBase. Paradox
e dBase é claro trazem capacidades adicionais além do database
engine (como o Delphi também o faz), mas isso é longe de
dizer que o valor agregado destes recursos adicionais é maior de
2 % das capacidades - os outros 98% são providos pelo database engine
e estão disponíveis para todos os usuários deste engine.
O Borland Database Engine (BDE) é
uma coleção de DLLs que as aplicações de banco
de dados irão fazer chamadas. Cada estação de trabalho
que tiver a aplicação de banco de dados instalada deverá
ter, também, o DBE instalado ( o Delphi vem com a instalação
do DBE para você adicionar a sua aplicação).
***
O DBE permite a você usar tabelas
dBase, Paradox ou ODBC em modo multi-usuário. A versão Cliente/Servidor
do Delphi também vem com links para servidores de banco de dados
como Oracle, Sybase, MS SQL Server, Informix, e InterBase.
Formatos de Base de Dados
Então, não existe diferença
entre a tecnologia do dBase, Paradox e Delphi. E sobre a diferença
entre os formatos do dBase e Paradox? Isso é uma discussão
antiga (antes do Delphi), mas devemos considerar isso prevemente (antes
de tudo para os usuários Delphi que não conhecem o dBase
e o Paradox conhecerem suas diferenças).
Existem algumas diferenças
fundamentais entre os arquivos do dBase e o Paradox , a maioria referente
ao tipo de dados. Dados numéricos são armazenados de forma
diferente no Paradox (doubles) e no dBase (armazenado como texto, o tamanho
do campo e definido na estrutura). Tabelas Paradox também suportam
senhas de proteção a nível de tabelas, as tabelas
dBase não. Os índices do Paradox podem obrigar a normalização,
forçando o valor dentro de um campo que é a base do único
índice para ser um valor único. No dBase, o propósito
primário dos índices é mostrar os campos em ordem
e (no caso de índice único e condicional) não mostrar
alguns registros. Com tabelas dBase a integridade referencial deve ser
programaticamente tratado, enquanto o Paradox suporta integridade referencial
e um travamento melhor. O dBase por outro lado cria um índice segundário
em ordem decendente, que o Paradox não pode criar. O formato dBase
é de domínio público (mais ou menos) e é portanto
"legível" para a maioria de programas do mercado enquanto o formato
do Paradox não.
Existe uma vantagem em tabelas dBase
que pode ser importante para grandes (locais) base de dados: o fato dele
ter basicamente um tamanho ilimitado. As tabelas Paradox tem um número
máximo de registros que depende do tamanho da página que
você usou quanto iniciou a criação da tabela. As tabelas
dBase não tem tal limite. As tabelas dBase também podem usar
o que é conhecido com expression indexes ( índices baseados
em expressões calculadas que podem involver parcialmente o conteúdo
de um campo tal qual substrings, etc).
Em ambiente de rede, tabelas dBase
são menos sujeitas a corrupção que as tabelas Paradox.
Isso é devido ao fato das tabelas dBase colocam informação
de travamento de tabelas (multi-uuário) em um campo oculto em cada
registro. O Paradox usa um arquivo de controle de redes central que todos
os usuários devem apontar para o acesso multi-usuário trabalhar
corretamente. O esquema do Paradox pretende que as tabelas Paradox rodem
muito mais rápido em um ambiente multi-usuário. Mas isso
também quer dizer que tabelas paradox podem colocá-lo em
apuros se cada usuário apontar para um arquivo de controle de redes
central diferente.
O Paradox requer um bit mais para
configurar a localização para o arquivo da rede e requer
um diretório privativo para os usuários da rede etc. Usar
o BDE (via Delphi) facilita duplamente o trabalho e pessoalmente não
vejo nenhuma vantagem significativa em qualquer caso.
Delphi
O que você pode fazer com o Delphi
é tentar os dois. Tudo que você deve fazer é construir
as tabelas em um formato e adotá-las para o desktop para construir
as outras (você tem que transformá-las em um mínimo
denominador comum para uma comparação direta). Depois, use
ALIAS para distinguir entre as que você está usando.
O Delphi consegue um encapsulamento
da tecnologia da base de dados do BDE. Isto é, as tabelas dBase
e Paradox podem ser armazenadas remotamente, de forma que usuários
múltiplos possam acessá-las. Delphi provides an encapsulation
of the database technology from the BDE. Obviamente, isso é tão
seguro quanto usar Paradox, dBase, Clipper, etc num ambiente de rede: todo
usuário pode manipular a base de dados (os índices são
especialmente vulneráveis). Então, é essencial fazer
back-ups regularmente.
Se você tem muita experiência
com dBase ou Paradox, não deve substituir esses ambientes pelo Delphi.
Ao invés disso, procure encontrar modos de usar dBase/Paradox com
o Delphi, e migrar lentamente sem o custo de conversão todos os
códigos existentes de uma vez. À medida que você lembrar
que o dBase, Paradox e Delphi são essencialmente baseados no mesmo
núcleo, vai perceber como essas ferramentas são realmente
similares (e diferentes!) .
É claro, o Delphi oferece
bem mais que o encapsulamento do BDE. A linguagem ObjectPascal e a sinergia
entre o editor de formulários, o Object Inspector, o editor de código
e a palheta de componentes são importantes para todos. Eu realmente
acredito que há material suficiente sobre o Delphi e seus aspectos
positivos. Até mesmo se você for um expert em dBase ou Paradox
e ficar com medo, pode levar algum tempo para se adaptar; não se
preocupe, use o Delphi!
Eu realmente acho que todo mundo
deveria, pelo menos, dar uma olhada no Delphi, e tenho certeza de que,
quando você olhar, vai querer usar! |