apostila delphi 2006 ds1 - .apostila programação de computadores – i (delphi) etec prof....

Download apostila delphi 2006 ds1 -   .APOSTILA Programação de Computadores – I (Delphi) ETEC Prof. Terezinha Monteiro dos Santos Taquarituba – SP 2º sem - 2010

Post on 04-Feb-2018

218 views

Category:

Documents

1 download

Embed Size (px)

TRANSCRIPT

  • APOSTILA

    Programao de

    Computadores I (Delphi)

    ETEC Prof. Terezinha Monteiro dos Santos

    Taquarituba SP

    2 sem - 2010

  • PC-I Programao de Computadores I Tc. Informtica

    Delphi

    2

    Paradigmas da Programao

    "Paradigma uma forma de pensar e perceber o mundo real e determina o que escolhemos como significativo e o que descartamos ao compreender ou descrever o que existe ou ocorre no mundo em torno de ns".

    A mudana de paradigma uma oportunidade de encontrar novas interpretaes para antigas questes, bem como, para rever solues tidas como definitivas. Introduo

    Antes de comearmos seria interessante ressaltar que aprender a ser um bom desenvolvedor envolve mais do que aprender a sintaxe de uma linguagem de programao em particular, isto porque existem muitos outros aspectos do campo do sw, que tm pouca conexo com o ato em si de escrever cdigo.

    Se voc pode est pensando: "Ora, vamos, eu s quero aprender Delphi", deveria tambm pensar que a questo aqui que, se voc pretende desenvolver sw por dinheiro ou para manter-se num emprego, e tem clientes ou chefes esperando que seu sw:

    Saia funcionando da caixa, Seja feito a tempo, Seja livre de erros e Seja barato,

    Ento, vamos ter que comear por aqui mesmo, comentando sobre problemas como a crise de sw; o ciclo de vida e a engenharia de sw porque apenas talento artstico indisciplinado (intuio) no resolve.

    Devemos nos lembrar que o objetivo mais direto do desenvolvimento de sw fazer o

    produto final satisfazer a especificao dos requisitos. Precisamos portanto, dividir isso em algo mais tratvel. Algum grupo menor ou mais preciso de objetivos que sejam mais alcanveis e fceis de lembrar.

    Lembre-se de que se tem algo que sempre permanente a mudana. Conforme sabemos, uma aplicao passar a maior parte de seu ciclo de vida na fase de manuteno. Ento, importante termos um conjunto de objetivos que transceda a mudana.

    Entre outros, os quatro objetivos geralmente excludos da engenharia de software so a capacidade de modificao, eficincia, confiabilidade e inteligibilidade. Devemos tambm destacar a ergonomia.

  • PC-I Programao de Computadores I Tc. Informtica

    Delphi

    3

    Programao Procedimental

    A maior parte dos programadores est acostumada a escrever cdigo que executado de forma sequencial. Tais programas possuem inicio, meio e fim bem definidos. Tipicamente, estes programas possuem telas de entradas de dados de algum tipo de processamento com estes dados de forma sequencial. Esta forma de se programar dita procedimental. A figura 1 ilustra a sequencialidade encontrada em programas que seguem tal paradigma.

    Esta forma de programar uma conseqncia direta dos sistemas computacionais disponveis no passado. Estes sistemas eram compostos por uma CPU responsvel pelo processamento (mestre) e uma srie de perifricos (escravos), responsveis pela entrada e sada de dados.

    O custo da CPU era nitidamente superior ao de qualquer perifrico e at mesmo ao custo do trabalho de quem lidava com estes computadores. Consequentemente, todos os sistemas davam prioridade mxima ao processamento, em relao entrada e sada de dados.

    Os programas desenvolvidos visavam normalmente a soluo de problemas de natureza cientfica, que naturalmente requisitavam mais recursos de CPU do que de entrada e sada de dados.

    A popularizao dos computadores modificou este quadro: as aplicaes comerciais tpicas dos dias de hoje exigem uma ateno maior dos programadores (e dos sistemas computacionais) para a entrada e sada de dados.

    A hierarquia rgida imposta pela estrutura de menus e a sequencialidade com que os formulrios so preenchidos pelo usurio impem limitaes srias na qualidade da interao do usurio com o computador na programao procedimental.

    Incio

    Entrada de Dados

    Processamento

    Fim

  • PC-I Programao de Computadores I Tc. Informtica

    Delphi

    4

    Um exemplo no baseado em eventos

    Program Verif_Nome;

    Var Nome : String;

    Begin

    Write ('Digite um nome: ');

    Readln (Nome);

    If Nome = 'Ze Silva' then

    writeln ('Nome bem original cara')

    else

    writeln ('O que poderia dizer');

    End.

    Note que o fluxo do programa bem definido. Primeiramente ele pergunta o nome do

    usurio. Agora, voc pode esperar que o usurio introduza seu nome, e no precisa se preocupar com nenhuma outra entrada ou ao que ocorra no ambiente.

    Depois que o nome informado, uma instruo if define o que o programa deve fazer em seguida e o programa termina. A lgica deste programa linear direta e sequencial. O modelo baseado em eventos no pode utilizar controle de fluxo do incio at o fim, pois o aplicativo deve manipular todas as aes ou eventos possveis

    Programao Orientada a Eventos

    Um aplicativo baseado em eventos, na verdade, no faz nada - a no ser que ocorra um evento. isso mesmo, ele no tem um incio ou final lgico. Ele simplesmente precisa saber como responde aos diferentes tipos de eventos. Isto no quer dizer que voc no pode ter um evento que ocorra quando o programa comea ou quando vai se fechar; entretanto, voc precisa pensar sobre seu modelo de programao de modo diferente.

    No exemplo anterior, voc sabia exatamente que aes o usurio executaria - digitar um nome. Contudo, pense em aplicativo processador de textos baseado no Windows. No h meios de saber se o usurio digitar uma frase, escolher uma opo no menu ou dar um clique em um boto, na barra de atalho. Independentemente da ao que o usurio executa, o aplicativo precisa ser consistente o suficiente para responder ao evento.

    A idia bsica por trs da programao dirigida a eventos que alguns eventos determinam o fluxo do aplicativo. Um programa gasta a maior parte de seu tempo aguardando eventos e tem cdigo que responde a diversos deles (nem todos, j que normalmente um programa ignora eventos nos quais no tem interesse). Por exemplo, quando o usurio d um clique em um dos botes do mouse, ocorre um evento. enviada uma mensagem descrevendo esse evento para a janela que est sob o cursor do mouse no momento. A aplicao intercepta a mensagem e chama o mtodo associado ao evento correspondente. Quando o metodo termina, o programa retorna a um estado de espera.

    Como a explanao acima demonstra, eventos so serializados; cada evento manipulado somente aps o anterior ter sido completado. Quando uma aplicao est executando cdigo de resposta ao evento (ou seja, no est aguardando um evento), outros eventos para essa aplicao devem aguardar em uma fila reservada de multitarefa gerenciada atravs de um manipulador de eventos.

    Aes Sistema Eventos

  • PC-I Programao de Computadores I Tc. Informtica

    Delphi

    5

    O avano da tecnologia barateou o custo dos sistemas computacionais e introduziu recursos grficos para a

    interao com os usurios (GUI- Graphic User Interface).

    Uma aplicao que se utiliza de interface grfica, permite que o usurio decida a seqncia mais apropriada de interao. Esta abordagem muda completamente a forma de se construir programas.

    As interfaces grficas introduziram assim uma forma completamente nova de se programar. Nesta abordagem, uma aplicao constitui-se de um loop para tratamento de eventos e de procedimentos associados a eventos especficos. Toda vez que ocorre um determinado evento, o seu procedimento equivalente executado. Eventos acontecem em decorrncia da interao do usurio com o sistema, gerados pelo sistema operacional ou ainda gerados na prpria aplicao. Exemplos de eventos: mover o mouse, pressionar uma tecla, selecionar um tem de menu, setar o foco para um determinado controle, etc.

    A cada ao do usurio corresponde um ou mais eventos enviados para a aplicao. Estes eventos devem ser identificados e tratados de maneira adequada pelo programa. Esta abordagem conhecida como programao orientada a eventos.

    As interfaces grficas tornaram a interao dos usurios com as aplicaes bastante atraentes. Em compensao, introduziram uma complexidade enorme do ponto de vista de programao. Para se ter uma idia, o cdigo em linguagem C no windows para escreve na tela Al mundo possui cerca de 100 linhas.

    Se acrescentarmos a isto o fato de que 80% do cdigo escrito para uma aplicao consumido na elaborao de interface, fica difcil de massificar a programao em ambientes de interface grfica.

    Felizmente, o paradigma da orientao a objetos consegui esconder do programador a maior parte da complexidade da programao nestes ambientes.

    Loop de Tratamento dos Eventos

  • PC-I Programao de Computadores I Tc. Informtica

    Delphi

    6

    IDE

    O ambiente de desenvolvimento do Delphi composto de vrias partes compondo um conjunto integrado de janelas que interagem entre si.

    Vamos abordar cada uma separadamente:

    O FORM DESIGN

    Form o termo utilizado para representar as janelas do Windows que compem uma aplicao. Os forms servem como base para o posicionamento dos com