Artigo Clube Delphi Edição 11 - Kylix Project
Artigo da Revista Clube Delphi Edição 11.
Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML.
Kylix Project
DBEXPRESS - A nova BDE
O Delphi nunca sofreu uma mudança tão radical em sua estrutura. O Delphi para Linux e o Delphi 6 para Windows estão trazendo uma quantidade enorme de novidades para os desenvolvedores. A maior delas, talvez se deva ao fato da VCL ser substituída por uma nova classe de objetos, denominada CLX (leia 'clicks'). O CLX é uma camada de componentes portável entre as plataformas Windows ,Linux e, futuramente, as distribuições do Delphi para outros sistemas operacionais. Isto significa que um aplicativo escrito em Delphi 6 para windows poderá ser portado para o Linux com uma grande facilidade, e vice-versa.
A camada CLX está dividida em quatro categorias básicas:
BaseCLX- As classes-pai desta biblioteca
VisualCLX- As classes de interface, os controles visuais;
DataCLX- Componentes de acesso à dados
NetCLX - Objetos voltados para a Internet - a atual palheta FastNet será substituída por esta camada.
A VisualClx, que contém as classes-pai para os objetos de interface, foi construída a partir da biblioteca Qt (leia "kíuti"), uma GUI interplataforma - está disponível para Windows e Linux. O Qt é fornecido pela trolltech e pode ser conferido com detalhes no endereço www.trolltech.com.
O papel de uma GUI (graphics user interface) é especificar regras de exibição e funcionamento para os objetos visuais. Por exemplo, a GUI de um sistema especifica se as janela serão tridimensionais ou não, ou como elas serão minimizadas. A GUI padrão do Windows é representada pela Win32 - um conjunto de APIs comuns ao Win9x e ao WindowsNT. Os objetos padronizados, como botões, listboxes, radiogroups e outros, foram reconstruídos a partir desta biblioteca e serão transparentes para o desenvolvedor. Veja a seguir uma figura que ilustra os objetos da camada VisualClx:
IDE do Kylix, exibindo objetos VisualCLX
A camada NetClx, além de substituir todos os componentes hoje encontrados para a Internet (diga adeus à FastNet!) traz além da manipulação de dados em XML, a interação com o servidor de web Apache - um fator fundamental para o desenvolvimento de CGIs no Linux.
DataClx e DbExpress - A nova BDE
A nova camada de objetos para acesso a dados, dataCLX, foi totalmente baseada na tecnologia MIDAS, ou seja, recursos como caching, cursors, n-tier e outros, estarão encapsulados nos objetos DataClx. Quem hoje utiliza o MIDAS para desenvolver seus aplicativos, terá uma portabilidade maior do que os sistemas baseados somente em tables ou queries.
A Inprise ainda não divulgou como será o licenciamento do MIDAS para aplicativos construídos a partir da camada DataClx.
A Bde (Borland Database Engine), que acompanhou o Delphi desde sua primeira versão, não estará mais presente. Os objetos DataClx irão interfacear com uma nova camada de acesso à dados, denominada dbExpress. Esta nova camada foi reconstruída a partir do zero, não aproveitando a estrutura da BDE. Veja agora as principais diferenças entre a BDE e a DbExpress:
A camada DbExpress é muito mais simples e leve, deixando muitos recursos a serem controlados pela própria aplicação. Por exemplo, o caching de dados. A dbExpress retornará os dados somente de forma unidirecional, ou seja, não criará um handle de edição (live result set). A camada Midas, encapsulada nos objetos DataCLX, será a responsável pelo cache dos dados retornados.
A API desta camada é mais simples, baseada em apenas quatro objetos- SQLDriver, SQLConnection, SQLCommand e SQLCursor - comumente chamados de SQLObjects.
A movimentação de registros, a indexação, ou qualquer outro tipo de manipulação dos dados retornados serão controlados pelo MIDAS ClientDataSet, livrando a DbExpress deste trabalho.
A dbExpress também não implementará o Cached Updates, RequestLives ou reprocessamento de querys dinamicamente, o que irá incrementar a performance de acesso.
Em suma, a nova camada promete um considerável aumento de performance para aplicações que manipulem massas de dados. Vejamos os principais pontos oferecidos pela DbExpress:
- Incremento considerável de velocidade, visto que a DbExpress é muito simples, eliminando toda a carga de processamento realizada pelo BDE;
- Maior praticidade para distribuição do aplicativo, pois a complexidade de configuração e instalação da BDE não estará mais presente:
- Alocação de recursos dinâmicos no cliente será muito menor.
Até a data de fechamento deste artigo, a Borland já havia confirmado o acesso ao Interbase e ao MySQL através desta camada.
CLX - O Delphi não é o mesmo?
As propriedades, métodos e eventos dos novos objetos são muito parecidos com a VCL. Portanto, os desenvolvedores não terão o que se preocupar, já que o desenvolvimento será praticamente transparente. Já os construtores de componentes sentirão um pouco de diferença, pois a estrutura dos novos objetos seguem novos conceitos. Veja alguns exemplos:
- As mensagens (messages) do Windows não estão presentes;
- Objetos derivados de TwinControl, irão descender de TwidgetControl;
- OwnerDraw não mais existe. Um novo conceito surge, chamado Styles (estilos).O uso de estilos permite a um controle assumir uma aparência completamente diferente, sem interferir no restante do código, de forma parecida com as interfaces gráficas do Linux.
Há pouco tempo, a Borland divulgou um componente totalmente escrito sobre a plataforma CLX, para seus parceiros de desenvolvimento de componentes. Este objeto é uma simples calculadora. As figuras abaixo demonstram o componente rodando sob a plataforma Windows e Linux, respectivamente:
Objeto Calculadora CLX sob o Windows
O mesmo objeto sob o Red Hat
Para facilitar a migração de aplicativos para a nova plataforma CLX, a borland disponibilizou um aplicativo que informa as classes mais utilizadas em seu sistema. O VCLScanner pode ser baixado, com fontes, no endereço: ftp://ftpc.inprise.com/pub/vcl_scanner/vclscanner-v1.zip
O Scanner listando os objetos mais utilizados pelo aplicativo CD-VENDAS
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo