Re: [firebase-br] aplicaçoes multi-banco...
Francisco Thiago
jeandeadlucky em yahoo.com.br
Seg Jun 13 12:07:11 -03 2005
Olá
Acredito que a paranóia não vá tão longe assim, é possível que se escreva
algumas rotinas mais simples no banco, como o incrementod e código por
exemplo.
A retirada das regras de negócio do banco é o que prega o paradigma de
Multi-camadas, que tem por objetivo, como você disse, tornar o processo de
migração entre bancos menos traumatizante. Afim de conseguir isso, toda a
regra de negócio é escrita em sistemas denominados Servidores de aplicação.
A grande vantagem, além da portabilidade, é que você consegue descentralizar
processos, como se estivesse trabalhando em cluster's...
Só que não é nada simples entrar neste modelo. Porque você precisa estar
afiado nos conceitos de POO. Se assim não for, você terá muito mais trabalho
do que o necessário para escrever a sua aplicação. Quando digo POO, falo de
aplicá-la a nível de tabelas mesmo, refletindo na aplicação todas as
procedures, triggers do banco em forma de eventos e métodos. Isso com
certeza não é nada fácil, principalmente pra quem não tem POO nos
neurônios... Até o sugeito entender quem tem que dar baixa no estoque...
foi-se muito tempo.
Outra coisa, o que ajuda muito na aplicação deste conceito é separar o
acesso aos dados da manipulação dos mesmos. O ClientDataSet se dispõe a
fazer isso e de forma sobrenome excelente. Ouvi dizer que existem outros
componentes que fazem o trabalho do CDS... se alguém souber, enriqueceria a
thread se nos dissesse.
E como cds, você vai conseguir toda a funcionalidade dos DataSet do Delphi.
então um código como o que você colocou não será necessário na aplicação.
(uma vez que a camada de manipulação, ou cliente, não mudará com tanta
constância).
Quanto ao IBO: Me disseram que ele é realmente muito bom. Mas a sua versão
para TDataSet, ouvi comentários que não é assim tão rápida. Então convém, eu
acho, usar outro componente que te ofereça algo mais... "já que na
velocidade ele empata"... no caso o DBXpress é uma boa pedida... ou até o
MDO... (outro que nunca trabalhei com ele... e não sei como é sua
performance com o FB).
Resumindo: Código genérico é o que há!
The True is on the code!
Francisco Thiago de Almeida
Enter&Plug Informática
Divisão: Desenvolvimento e Banco de dados
MSN: thiago em enterplug.com.br
Skype: enterplug_thiago
----- Original Message -----
From: "RedDevil" <reddevil em reddevil.eti.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Sunday, June 12, 2005 8:16 PM
Subject: [firebase-br] aplicaçoes multi-banco...
ola pessoal,
agora a pouco eu me toquei de uma coisa...
tendo em vista que algumas pessoas comentam no sentido de que, quando formos
desenvolver uma aplicaçao, um sistema, usando o Firebird como banco de
dados, devemos desenvolver esse sistema de modo que ele fique de forma que
possa ser mais facilmente portado para outro banco, para o caso do nosso
usuario de repente ficar milhonario e querer usar o Oracle (eu acredito que
chegara um dia em que o FB nao ficara devendo muita coisa para o Oracle...
mas ae ja eh outra historia...;o), e que, portanto, nao seria aconselhavel
usar componentes de acesso que nos "prendam" ao Firebird, etc e talz, eu
comecei a ter uma crise existencial diante dessa tendencia...
o que me ocorreu eh que, segundo essa filosofia, a gente tambem nao devera
usar recursos do Firebird, nem SQL, SP's ou Triggers, pois esses recursos
sao especificos do Firebird e nao funcionarao no Oracle...
diante disso eu pergunto, entao, como eu deverei proceder, ja que nao devo
fazer nada no banco? como eu deverei desenvolver as minhas aplicaçoes para
que elas fiquem mais facilmente portaveis para outro banco que nao o
Firebird???
sera que eu deverei desenvolver algo tipow dessa maneira ae abaixo?
Table1.Edit;
Table1.FieldByName( 'campo' ).AsString := Edit1.Text;
Table1.Post;
uma boa semana de trabalho a todos...
;o)
[]s
força sempre.
ate +++
--
Luiz "RedDevil" Stefanski
http://www.RedDevil.eti.br - Delphi Powered by IBObjects
exemplos e dicas sobre o IBObjects:
http://www.firebase.com.br/cgi-bin/firebase.cgi/dnld?ID=165
compilaçao/instalaçao do IBObjects sabor BPG:
http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=630
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
____________________________________________________
Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis! http://mail.yahoo.com.br
Mais detalhes sobre a lista de discussão lista