Sei sulla pagina 1di 16

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

Captulo II
Conhecendo o Delphi
Se voc teve algumas dvidas no captulo anterior sobre a rea de trabalho do Delphi no se preocupe, neste captulo voc poder san-las completamente, tambm ser mostrado o mtodo de estrutura de aplica !es Client/Server" Caso voc se#a usurio do Delphi 1.0 na barra de menu selecione a op o Help e Interactive Tutors, voc receber uma aula On-Line sobre a nova rea de trabalho" $s elementos da inter%ace Delphi %oram divididos do seguinte modo&

Elementos Visveis
$ ambiente de trabalho do Delphi %ormado por ob#etos 'ue esto visveis to logo 'ue o aplicativo se#a iniciado %ormando a rea de trabalho"

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

Viso Geral dos objetos visveis do Ambiente Delphi

Form
$s %ormulrios (ob#eto orm) so os pontos centrais para o desenvolvimento Delphi" *oc se utili+ar deles para desenhar sua comunica o com o usurio, colocando e organi+ando outros ob#etos" ,stes ob#etos so arrastados da Component Palette, mostrada na #anela locali+ada acima" *oc pode imaginar 'ue o %ormulrio um ob#eto 'ue contm outros ob#etos" Sua aplica o %icar locali+ada em um %ormulrio principal e este interagir com outros %ormulrios criados" - possvel aumentar, mover ou ocupar completamente a tela do monitor, ou at mesmo ultrapass-la" .m %ormulrio bsico inclui os seguintes componentes&
Controles de menu/ 0ot!es de ma1imi+a o e minimi+a o/ 0arra de ttulo/ e 0ordas redimensionveis"

$ c2digo gerado, na rea conhecida como Code !ditor, %ica e1atamente atrs do ob#eto %ormulrio, cli'ue na barra de notas, em "nit1, se alguma coisa %or desconhecida para voc, leia maiores e1plica !es no Captulo I"

+ - possvel enviar um %ormulrio para a impressora, para isto e1istem duas maneiras&
3" 4ipo um Print#$reen de 4ela, colo'ue o seguinte comando 567ome do %ormulrio8"9rint/: no evento on#ho% do %ormulrio/ ou ;" 9ara imprimir um %ormulrio no tamanho de um papel <=, atravs do uso de comandos da biblioteca Printer, ve#a o Apndice D para maiores detalhes"

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

Code Editor
$ editor de c2digos providncia total acesso ao c2digo gerado pelo pro#eto, incluindo alguns dos mais poderosos recursos para a edi o" 9ode ser selecionado tipos de cores para os elementos do programa (como por e1emplo comentrios, palavras reservadas, c2digos assembler, """) para tanto a partir do menu principal entre em Tools > Options..., locali+e a pgina Colors" 9ara outras in%orma !es adicionais sobre o modo de usar este editor, procure re%erncias no &elp OnLine no t2pico Code Editor" <o ser aberto um novo pro#eto, o Delphi gera automaticamente na pgina do Code !ditor uma "nit com o ar'uivo c2digo ("9<S)" 9ara ver o c2digo de uma "nit em particular, simplesmente Cli$' na tabula o de pgina" $ Code !ditor mostrar sempre o nome do ar'uivo corrente ativo na tabula o de pgina"

+ - possvel alternar entre o ob#eto Form e a Code Editor atravs do pressionamento da


tecla F12, do boto boto ((o))le orm*"nit) da #peed+ar, ou ainda atravs das op !es do menu Vie ! To""le Form#$nit" (curiosidade& o acesso rpido atravs da tecla <lt ? @etra sublinhada para esta op o est marcado sobre a letra %)

Component Palette
Componentes (ou ob#etos) so os elementos 'ue voc usar para trabalhar com a aplica o" Aoram includos ob#etos em vrias pginas, tais como cai1as de dilogos e bot!es, a palheta inclui tambm alguns espa os em branco para ser permitida a adi o de novos ob#etos" <lguns ob#etos no sero visveis en'uanto a aplica o estiver e1ecutando, eles %a+em parte do servi o da DDE (D,nami$ Data !-$han)e)" $s ob#etos da palheta %oram divididos em grupos de %uncionalidade em di%erentes pginas" 9or e1emplo, os ob#etos 'ue representam as #anelas tradicionais do .indo%sB (tais como %ontes, palheta de cores, """) %oram colocados na pgina Dialo)s da palheta" *oc poder criar seus pr2prios ob#etos como tambm instalar outros # prontos, para isso %oi colocado os espa os va+ios" 9or e1emplo poder ser instalado novos controles e ob#etos do Visual &asicB '.( ($b#etos $CC - ou para os portadores do Delphi 1.0 o do Visual &asicB ).( os ob#etos *0C)" .ma das principais vantagens da *OO 'ue muito em breve dever ser colocado no mercado pacotes de ob#etos prontos para serem integrados aos sistemas o 'ue %acilitar ainda mais o desenvolvimento e a manuten o dos mesmos"

Object Inspector
9rovidncia a cone1o entre a inter%ace visual e o c2digo" - Composto por duas pginas Properties (propriedades) e !vents (,ventos) 'ue mostrar as propriedades e eventos do ob#eto selecionado"

Disponibili+a um %cil caminho para a personali+a o dos ob#etos" *oc usar a pgina de *ropriedades para personali+ar os ob#etos colocados no %ormulrio (inclusive o pr2prio %ormulrio), e a pgina de Eventos para gerenciar a navega o entre certas partes do c2digo do programa" $ seletor de ob#etos (Obje$t #ele$tor - locali+ado em um ob#eto do tipo Combo+o- no topo do Obje$t /nspe$tor) mostra o nome e o tipo de todos os componentes do %ormulrio corrente (inclusive o pr2prio)" *oc pode usar o seletor de ob#etos para locali+ar %acilmente 'ual'uer ob#eto no %ormulrio"

SpeedBar
Contm os bot!es mais %re'Dentemente utili+ados" Aornecendo deste modo um atalho de navega o ao menu principal do Delphi" - possvel a personali+a o da #peed+ar colocando nela os caminhos do menu principal 'ue voc mais utili+a, bastando para isso& E" Fedimensione a #peed+ar. 9ara tanto posicione o cursor do mouse sobre o ponto de encontro da #peed+ar com a Component Palette con%orme o desenho abai1o&

=" Guando o cursor do mouse mudar de %ormato, cli'ue o boto es'uerdo do mouse e arraste abrindo a rea da #peed+ar" H" Cli'ue com o boto direito do mouse na rea aberta, apare a um menu P0llDo%n contendo entre outras op !es a op o Properties, selecione-a" I" <s categorias e os comando so divididos de acordo com o menu, cli'ue em cima dos comandos disponveis e arraste-os para a rea aberta de acordo com a sua necessidade, para retirar os bot!es da #peed+ar %a a o processo inverso"

Elementos no Visveis
<lguns elementos no esto prontamente visveis 'uando o Delphi iniciado mas voc poder ter acesso a eles bastando para isso selecionar a op o na barra de menu"

Project Manager
$ Jerenciador de 9ro#etos contm uma lista de %ormulrios ou unidades utili+ados pela aplica o, e serve para controlar estes %ormulrios ou unidades, adicionando-os ou removendo-os do pro#eto, organi+ando as op !es do pro#eto, entre outros"

'

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

+ *oc tambm poder colocar um boto para iniciar o Jerenciador de 9ro#etos atravs
da #peed+ar ,

Menu Designer
$ 1en0 Desi)ner permite a cria o de menus para os seus %ormulrios" *oc pode criar menus ou menus do tipo p0lldo%n atravs dos ob#etos 1ain1en0 ou Pop0p1en0 (locali+ado na pgina #tandard na Component palette)" < cria o completa de +enus ser colocada de %orma mais abrangente no Captulo IV"

Fields Editor
9ara o Delphi possvel editar e modi%icar as propriedades de 'uais'uer campos dos ob#etos de tabelas associadas ao banco de dados, a ields !ditor em con#unto com a Obje$t /nspe$tor controlam o modo de mostrar determinados campos de ar'uivos, importante lembrar 'ue esta modi%ica o no a%etar os campos da tabela, apenas para o %ormulrio ativo em 'uesto" Sua utili+a o e%etiva ser mostrada a partir do Captulo V"
Add -ields... responsvel pela adi o de de%ini !es de campos da tabela, possvel inserir um ou mais campos, dependendo de sua utili+a o para o %ormulrio"

.e -ield... permite a cria o de um novo campo, este pode ser a deriva o de um ou mais campos da tabela" Cut envia para rea de trans%erncia e elimina todas as de%ini !es do campo selecionado" Cop/ copia para a rea de trans%erncia todas as de%ini !es do campo selecionado" *aste recebe da rea de trans%erncia todas as de%ini !es do campo selecionado criando-o" Delete e1clui 'uais'uer de%ini o para os campos" 0elect all seleciona todas as de%ini !es dos campos" 1etrieve Attri2utes atuali+a os atributos do campo selecionado com os campos do dicionrio de dados" 0ave attri2utes salva os atributos do campo selecionado para o dicionrio de dados" 0ave attri2utes as... salva os atributos do campo selecionado para o dicionrio de dados permitindo a renomea o do campo" Associate attri2utes... %a+ a associa o dos atributos do campo selecionado com determinado campo do dicionrio de dados" $nassociate attri2utes remove a associa o dos atributos do campo selecionado com determinado campo do dicionrio de dados"

Repositrio de Objetos
$ 1eposit3rio de O24etos do Delphi 2.0 arma+ena e gerencia os ob#etos da aplica o& Aormulrios, Data 1od0les, geradores e-perts, e D@@ (Dinami$ Lin'ed Librar, - 0ibliotecas de acesso dinKmico)" 7a essncia, ele centrali+a as locali+a !es dos ob#etos envolvidos agrupado-os" < proli%era o dos ob#etos no reposit2rio incrementa as seguintes vantagens& Suporte a e'uipe de desenvolvimento para re%erncia aos ob#etos da rede"

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

.ma customi+a o de todo o desenvolvimento em grupos l2gicos de ob#etos, %acilitando o re-uso dos mesmos"

$ Delphi possui diversas caractersticas 'uanto a sua utili+a o" 4em os (0tors e !-perts 'ue so as %erramentas responsveis para guiar-nos atravs de tcnicas, tais como, manipula o de componentes e cria o de simples aplica !es" <lm disso o Delphi o%erece uma cole o de modelos para %ormulrios, #anelas de dilogo e at mesmo aplica !es completas na %erramenta 3e% /tems" < #anela do 3e% /tems sempre chamada automaticamente 'uando a op o File > .e ... do menu principal e1ecutada"

+ - possvel para voc criar novas #anelas, ou pro#etos, automticos no Delphi" 9ara a
nossa sorte a &orland no esconde o #ogo e mostra como se cria uma template visite o diret2rio 6&O17A.D6DE7*HI 2.(6O&81E*O0 , o e'uivalente no Delphi 1.0 encontrado no diret2rio 6DE7*HI6%A77E19 , todos os e1emplos so auto-e1plicativos"

+ 9ara de%inir o pro#eto padro 'ue o 3e% /tems e1ecutar no incio de cada pro#eto,
cli'ue com o boto direito acima da #anela e escolha a op o *roperties aparecer as listas Pa)es e Obje$ts, de%ina 'uais'uer dos ob#etos como 3e% orm ou 1ain orm"

+ $bserve 'ue a segunda %olha da #anela 3e% /tems (ter o nome do seu ar'uivo com a
e1tenso .D*1) o seu pro#eto corrente, ou se#a, uma nova #anela poder ser derivada, por caracterstica de heran a, de uma outra #anela # e1istente"

Estrutura de Aplicaes com o Delphi 2.0


.m dos ob#etivos de desenhar aplica !es do tipo Client * #erver para o desenvolvimento a reutili+a o dos ob#etos, das regras de neg2cio e das telas do pro#eto" $ Delphi Client * #erver #0ite 2.0 o nico 'ue implementa uma ar'uitetura incorporando a tecnologia 1AD (4apid Appli$ation Development - Desenvolvimento Fpido de <plica !es) com o desenvolvimento

totalmente OO (Obje$t Orientation - $rientado a $b#etos) para a redu o do tempo de desenvolvimento e manuten !es improvveis" <dicionando, uma ar'uitetura aonde possvel a separa o da %$I (Gra5i$ "nit /nter5a$e - .nidade de Lnter%ace Jr%ica), das regras de neg2cio l2gicas e do desenho do banco de dados de acordo com o modelo representado abai1o&

Benefcios:
M" < separa o do desenho da %$I (atravs dos ob#etos Forms) com a rea de liga o l2gica de dados (atravs dos ob#etos Data +odules) permite 'ue se cause um menor impacto sobre ambas as reas" <s mudan as podem ser e1ecutadas nas telas de entrada ou nas liga !es, independentemente, de acordo com os re'uerimentos do usurio" N" < separa o do desenho da %$I com a rea de liga o l2gica de dados reali+ada com uma certa habilidade aos eventos envolvidos, poder no necessariamente dever ser controlada por um habilidoso D&A (Database Administrator - <dministrador de 0anco de Dados), com suas %antsticas regras de neg2cio, podendo inclusive ser mantida por um 5analista de in%orma !es:" O" $ desenho do banco de dados, a constru o das metodologias de neg2cio e o desenho e a cria o das #anelas de entrada so e%etivados dentro da aplica o" $ desenvolvimento, ento paralelamente, resultar em uma maior rapide+" 3P" Qerdando as #anelas de entrada, em nveis de utili+a o, redu+-se drasticamente o processo de codi%ica o, e em conse'Dncia, o processo %uturo de manuten o" <s mudan as l2gicas das regras de neg2cio ou a incorpora o de novos padr!es, so %eitas automaticamente para todos os ob#etos herdados"

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

33" $ reposit2rio de ob#etos, os %ormulrios reusveis e a utili+a o dos ob#etos Data +odules, envolve em elimina o da duplica o de c2digos e de trabalhos com desenhos de #anelas, e em conse'Dncia na redu o da e'uipe de desenvolvimento"

Implementao efetiva
Objetos Data Module
< partir do Delphi 2.0 %oi incorporado o uso de ob#etos conhecidos por Data +odule, 'ue servem para 'ue suas aplica !es providenciem um desenho centrali+ado da de%ini o de acesso aos dados e das regras de neg2cio" $s ob#etos Data +odules, tambm podem ser separados por neg2cios l2gicos (como e1emplo por reas& compras, vendas, esto'ue, etc") %ormando caminhos de cone1!es simples"

$s ob#etos Data +odules podem ser aplicados a ob#etos tais como Ta2les, 0tored *rocedures, ou <ueries permitindo a centrali+a o dos eventos envolvidos em antes e depois da grava o, e1cluso, inser o ou edi o dos dados" , at mesmo na coloca o de novos ob#etos de controle para maior %acilidade" <s rela !es de dados 1aster * Detail so de%inidas em menor 'uantidade" 9ossibilita ento ao desenvolvedor criar aplica !es do tipo Client * #erver de %orma mais %cil, rpida, e segura se utili+ando das propriedades dos ob#etos Datasources ou utili+ando o Data2ase Form E=pert"

>

$s %ormulrios das aplica !es, podem ser ligados diretamente a um ou mais ob#etos Data +odule para a propaga o das regras de neg2cio sem a necessidade de e1ecu o de um c2digo e1tra" $s ob#etos Data +odules so classes de ob#etos 'ue pertencem a intera o dos dados do database server" Lsolando totalmente o acesso ao banco de dados com a aplica o Client, simpli%icando deste modo toda a manuten o reali+ada" $ <cesso ao Delphi aos bancos de dados se processa da seguinte maneira&

Distribuio Lgica da Aplicao:


$s ob#etos Data +odule %oram desenvolvidos para criar uma centrali+a o l2gica de todas as regras de neg2cio, separando a rea de viso do usurio com a rea do desenho do 0anco de Dados" ,ste s2lido %undamento de suporte so distribudos em um n-nmero de aplica !es e ar'uiteturas servidoras disponveis, tais como CIC0 da I&+, TopEnd da ATT, Tu=edo da .ovell, O24ect &ro?er da Di"ital, IO.A da Or2i= e muitas outras"

Dicion rio de Dados Escal !el


$ dicion@rio de dados utili+ado para arma+enar in%orma !es sobre o uso dos dados contidos nas suas tabelas" $ dicionrio deve ser como uma rvore geneal2gica trabalhando como um inspetor de modi%ica !es 'ue permitem um arma+enamento %acilitado" $ dicionrio deve conter in%orma !es dos atributos dos campos tais como& valores mnimo, m1imo e comuns (valores de5a0lt), mscaras utili+adas, etc" < utili+a o do dicionrio de dados tra+ as seguintes vantagens& 3;" Consistncia& Campos idnticos so arma+enados centralmente no dicionrio isto redu+ o tempo de de%ini o das duplicidades" .m desenvolvedor poder criar os campos complementares com domnios e aplica !es apropriadas" 3E" 1eduABo do Tr@-ico da 1ede& $ Delphi permite 'ue a valida o dos dados se#a %eita nas m'uinas $lient ou no servidor" $ Dicionrio de dados permite 'ue a manuten o dos atributos dos campos do lado $lient se#a validado de %orma e%iciente redu+indo a necessidade do tr%ego da rede"

1(

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

"erdando os Formul rios


$ desenvolvimento de aplica !es corporativas de uma %orma padroni+ada um %ato de suma importKncia para as empresas envolvidas" Ras conseguir e manter este padro uma tare%a considerada praticamente impossvel, # 'ue as aplica !es devem se moderni+ar na velocidade 'ue o mercado de in%ormtica e1ige" $s %ormulrios herdados do Delphi so simples e1tens!es da programa o orientada a ob#etos, conseguindo manter, de %orma automtica, os padr!es e as modi%ica !es reali+adas nos pro#etos" , em con#unto com o 1eposit3rio de O24etos, padroni+a, organi+a e centrali+a os %ormulrios resultando em modi%ica !es de curtssimo tempo"

11

Ferramentas Auxiliares de SQL


9ara o trabalho com bases de dados padro 0<7 (#tr0$t0re 60er, Lan)0a)e @inguagem estruturada de Consultas), o Delphi conta com as seguintes %erramentas 1AD 'ue au1iliam ao desenvolvimento"

Monitor S#$
.m monitor 0<7 um %erramenta para testes, depura o e e1ecu o de consultas 0<7 em aplica !es Client * #erver" Lsto resulta em um aumento da produtividade de desenvolvimento e melhor per%ormance da aplica o" $ monitor 0<7, intercepta as chamadas entre as m'uinas $lient e o servidor" ,sta in%orma o au1ilia ao desenvolvedor em problemas relacionados as declara !es 0<7 e otimi+a este tipo de transa o" .ma srie de caminhos de intercepta !es podem ser tra ados, dependendo da necessidade do desenvolvedor, para 'ue as in%orma !es a serem colocadas em um relat2rio online se#am as mais imprescindveis o possvel" - possvel inclusive salvar e imprimir o relat2rio gerado para consultas ou testes posteriores"

12

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

S#$ E%plorer
< %erramenta 0<7 E=plorer providencia uma in%orma o centrali+ada do gerenciamento das demandas da base de dados/ tais como, suporte a modi%ica o e cria o de tabelas, sinSnimos, procedimentos de grava o, tri))ers (gatilhos disparados pelo banco) e e1ecu o das regras de neg2cio interativas do 0<7" .ma %erramenta gr%ica 'ue proporciona um es'uema de integridade da base da dados e contm as %erramentas essenciais para os administradores de bancos de dados" $ 0<7 E=plorer, unicamente para o Delphi, administra de %orma intuitiva e %cil o banco de dados" < simplicidade de uso da inter%ace gr%ica um per%eito caminho para representar o comple1o relacionamento 'ue e1iste no banco de dados do servidor" <presenta um es'uema para in%orma !es em bancos como OracleB, 0/2aseB, Inter&ase, In-ormi=B, D&2B e outros" $ desenvolvedor poder trilhar campos, tabelas e procedimentos do banco dentro da constru o da aplica o Delphi rapidamente, podendo ser direcionado para mltiplos servidores e mltiplos bancos"

1)

$ 0<7 E=plorer, tambm administra o Dicion@rio de Dados" Sua inter%ace de uso simplicado permite %acilmente de%inir novos domnios para os atributos dos campos e associa o entre tabelas"

InterBase &' ( Banco de Dados Relacional


$ Delphi Client * #erver #0ite 2.0 inclui uma licen a para dois usurios do uso do banco de dados Inter&ase .T" Desenvolvedores podem criar em m'uinas standalone aplica !es usando este poderoso banco de dados (concorrente de bancos como OracleB, 0/2aseB, In-ormi=B, D&2B e outros)" Com o crescimento do volume de dados e do tamanho da aplica o, ambos, o Inter&ase e o Delphi conseguem interagir de %orma harmoniosa" $ Inter&ase um banco de dados de alta per%ormance produ+ido pela &orland, como plata%orma para #6L #erver" ,st disponvel em mais de 3H sistemas operacionais incluindo& DO0 e Cindo sB ).1, Cindo sB >,, Cindo sB .T, .etCareB, 0COB, 0un O0B, 0un 0olarisB, H*D$EB, I&+ AIEB, 0%I I1IEB, etc" $ Inter&ase um banco a nvel A3#/ #6L 72, suportando eventos programados e e1ce !es ocorridas no modelo por acesso de mltiplos usurios" $%erece chaves de controle a nvel de registros para ar'uiteturas Rulti-Jerenciais causando um per%ormance muito superior a uma leitura das opera !es de banco, em contrrio das leituras de blocagem de opera !es escritas reali+adas por outros bancos" < verso local do Inter&ase, disponvel apenas com a c2pia Client * #erver #0ite 2.0 , providencia aos desenvolvedores um caminho rpido para o desenvolvimento de prot2tipos e de sistemas com um banco de padro A3#/ 72 #6L" ,sta verso propicia as mesmas %uncionalidades da verso multi-usurio para .T e $ni=, incluindo controles de transa !es, procedimentos de grava o (stored pro$ed0res), uso de tri))ers (gatilhos disparados do banco), ou eventos de alerta"

1'

Borland

Delphi e Delphi Client/Server

Desvendando o Caminho das Pedras

Lmagine o desenvolvimento de um grande sistema sendo reali+ado em um Laptop dentro de um trem, avio ou at mesmo na %rente do cliente, apenas o acesso ao banco de dados %inal 'ue ser modi%icado" .tili+ando o Delphi Client*#erver #0ite 2.0 , desenvolvedores podero conceber e desenhar prot2tipos e testar a aplica o %inal em uma nica m'uina" $ Inter&ase o%erece um e1cepcional acesso a inter%ace gr%ica do Cindo sB, incluindo a con%igura o das propriedades, um per%eito gerenciador de bancos nativo E; bits, total interatividade com %erramentas SG@, e uma completa documenta o em %ormato de &elp do Cindo sB (ar'uivos "Q@9)"

1,

Potrebbero piacerti anche