Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Linguagem Técnica de Programação Delphi, Notas de estudo de Informática

Linguagem Técnica de Programação Delphi

Tipologia: Notas de estudo

2011

Compartilhado em 15/12/2011

valdirene-souza-8
valdirene-souza-8 🇧🇷

3 documentos

1 / 36

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
UNIVERSIDADE TIRADENTES
DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
Prof. José Maria Rodrigues Santos Júnior
Linguagem Técnica de Programação
DELPHI
Aracaju 4 de fevereiro de 1997
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24

Pré-visualização parcial do texto

Baixe Linguagem Técnica de Programação Delphi e outras Notas de estudo em PDF para Informática, somente na Docsity!

UNIVERSIDADE TIRADENTES

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

Prof. José Maria Rodrigues Santos Júnior

Linguagem Técnica de Programação

DELPHI

Aracaju 4 de fevereiro de 1997

  • CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS...................................
  • INTRODUÇÃO
    • Fatos..............................................................................................................................................................................................
    • Problemas......................................................................................................................................................................................
    • Solução..........................................................................................................................................................................................
    • Evolução........................................................................................................................................................................................
  • CONCEITOS..................................................................................................................................
  • COMPONENTES BÁSICOS DA ORIENTAÇÃO A OBJETOS........................................
  • CONCEITOS ADICIONAIS..............................................................................................................
  • HERANÇA................................................................................................................................
  • CONCEITOS..................................................................................................................................
  • CLASSES ABSTRATAS..................................................................................................................
  • POLIMORFISMO............................................................................................................................
  • SOBRECARGA DE OPERADORES...................................................................................................
  • MÉTODOS VIRTUAIS....................................................................................................................
  • UM EXEMPLO DE ORIENTAÇÃO A OBJETOS.................................................................................
  • END..........................................................................................................................................
  • OBJECT PASCAL..................................................................................................................
  • INTRODUÇÃO.............................................................................................................................
    • Estrutura de um Programa...........................................................................................................................................................
    • Identificadores.............................................................................................................................................................................
    • Características..............................................................................................................................................................................
    • Seções de Declaração..................................................................................................................................................................
    • Estrutura de uma Unit..................................................................................................................................................................
    • Comentários.................................................................................................................................................................................
  • PROCEDIMENTOS BÁSICOS DE ENTRADA E SAÍDA....................................................................
    • Entrada.........................................................................................................................................................................................
    • Saída............................................................................................................................................................................................
  • TIPOS.........................................................................................................................................
    • Tipos Inteiros...............................................................................................................................................................................
    • Tipos Booleanos..........................................................................................................................................................................
    • Tipo Sub-Faixa............................................................................................................................................................................
    • Tipo Enumerado..........................................................................................................................................................................
    • Tipos Ordinais.............................................................................................................................................................................
    • Tipos Reais..................................................................................................................................................................................
    • Tipo String...................................................................................................................................................................................
    • Seção de Declaração de Tipos Definidos pelo Usuário...............................................................................................................
    • Declaração de Tipos....................................................................................................................................................................
  • VARIÁVEIS.................................................................................................................................
    • Seção de Declaração de Variáveis...............................................................................................................................................
    • Declaração de Variáveis..............................................................................................................................................................
  • OPERADORES.............................................................................................................................
    • Aritméticos..................................................................................................................................................................................
    • Lógicos........................................................................................................................................................................................
    • Bit-a-bit........................................................................................................................................................................................
    • Relacionais..................................................................................................................................................................................
    • Precedência..................................................................................................................................................................................
  • CONSTANTES.............................................................................................................................
    • Seção de Declaração de Constantes............................................................................................................................................
    • Declaração de Constantes Simples..............................................................................................................................................
    • Declaração de Constantes Tipadas..............................................................................................................................................
    • Funções Constantes.....................................................................................................................................................................
  • BLOCOS......................................................................................................................................
  • ATRIBUIÇÃO.............................................................................................................................. 
  • SELEÇÃO....................................................................................................................................
    • Seleção Simples...........................................................................................................................................................................
    • Seleção Múltipla..........................................................................................................................................................................
  • REPETIÇÃO.................................................................................................................................
    • Repetição Contada.......................................................................................................................................................................
    • Repetição Condicional.................................................................................................................................................................
    • Instruções de Salto.......................................................................................................................................................................
    • Resumo........................................................................................................................................................................................
  • CONJUNTO.................................................................................................................................
    • Definição do Conjunto................................................................................................................................................................
    • Conjunto Constante.....................................................................................................................................................................
    • Operadores...................................................................................................................................................................................
  • VETORES E MATRIZES...............................................................................................................
    • Vetores.........................................................................................................................................................................................
    • Matriz..........................................................................................................................................................................................
    • Acesso aos Elementos.................................................................................................................................................................
    • Vetor Constante...........................................................................................................................................................................
  • REGISTROS.................................................................................................................................
    • Definição do Registro..................................................................................................................................................................
    • Acesso aos Elementos.................................................................................................................................................................
    • Cláusula with...............................................................................................................................................................................
    • Registro Constante.......................................................................................................................................................................
  • PROCEDIMENTOS E FUNÇÕES....................................................................................................
    • Escopo.........................................................................................................................................................................................
    • Visibilidade..................................................................................................................................................................................
    • Tempo de Vida............................................................................................................................................................................
    • Procedimentos.............................................................................................................................................................................
    • Funções........................................................................................................................................................................................
    • Parâmetros Formais.....................................................................................................................................................................
    • Parâmetro com Passagem por Valor............................................................................................................................................
    • Parâmetro com Passagem por Referência...................................................................................................................................
    • Parâmetro Constante....................................................................................................................................................................
    • Parâmetro Aberto.........................................................................................................................................................................
    • Valor de Retorno.........................................................................................................................................................................
    • Chamada a um Procedimento ou Função....................................................................................................................................
  • PONTEIROS.................................................................................................................................
    • Definição do Tipo........................................................................................................................................................................
    • Alocação de Memória..................................................................................................................................................................
    • Alocação de Memória..................................................................................................................................................................
    • Acesso a uma variável apontada..................................................................................................................................................
  • ARQUIVOS..................................................................................................................................
    • Associação com Nome Externo...................................................................................................................................................
    • Abrir Arquivo para Leitura..........................................................................................................................................................
    • Criar e Abrir um Arquivo Novo..................................................................................................................................................
    • Abrir um Arquivo Texto para Expansão.....................................................................................................................................
    • Fechar um Arquivo......................................................................................................................................................................
    • Fim de Arquivo............................................................................................................................................................................
    • Leitura de Dados..........................................................................................................................................................................
    • Gravação de Dados......................................................................................................................................................................
  • CLASSES....................................................................................................................................
    • Definição de uma Classe Base....................................................................................................................................................
    • Atributos e Métodos....................................................................................................................................................................
    • Visibilidade..................................................................................................................................................................................
    • Definição de uma Herança..........................................................................................................................................................
    • Métodos Virtuais.........................................................................................................................................................................
    • Métodos Abstratos.......................................................................................................................................................................
    • Método Construtor.......................................................................................................................................................................
    • Método Destrutor.........................................................................................................................................................................
    • Referência para um Objeto..........................................................................................................................................................
    • Conversão de Tipo.......................................................................................................................................................................
    • Verificação de Tipo..................................................................................................................................................................... 
  • TRATAMENTO DE EXCEÇÃO......................................................................................................
    • Aplicações Robustas....................................................................................................................................................................
    • Criação de um Bloco Protegido...................................................................................................................................................
    • Tratamento de Exceções..............................................................................................................................................................
    • Tratamento de um Exceção.........................................................................................................................................................
    • Principais Classes de Exceção.....................................................................................................................................................
    • Criação de Classes de Exceção....................................................................................................................................................
  • end.............................................................................................................................................

Conceitos de Programação Orientada a Objetos

Introdução

Fatos

 Crescimento no tamanho das aplicações.

 Aumento na complexidade das aplicações.

 Necessidade de manutenção de sistemas antigos.

 Aumento da demanda por sistemas novos.

 Baixa produtividade.

Problemas

 Necessidade de rescrever algoritmos e estruturas de dados para novas aplicações.

 Mudanças em sistemas necessitam alterações em muitos módulos.

Solução

 Estruturas de dados associadas às operações.

Evolução

Conceitos

Objeto Características Comportamentos Crise  Evolução Programação Tradicional Programação Tradicional Programação Estruturada Programação Estruturada Programação Orientada a Objetos Programação Orientada a Objetos

Classes Abstratas

 Não pode ser instanciada.

 Possui métodos que não estão implementados.

 Definida para ser a base de uma hierarquia.

Polimorfismo

 Sobrecarga do Nome do Método

 Objetos de classes diferentes podem ter métodos com mesmo nome e cada objeto responderá

adequadamente de acordo com seu método.

 Métodos da mesma classe podem ter o mesmo nome, desde que possuam quantidade ou tipo de

parâmetros diferentes.

 Métodos da classe derivada podem ter nomes iguais aos da classe base, inclusive com parâmetros iguais.

Sobrecarga de Operadores

 Todos os operadores da linguagem, se possível, devem ser passíveis de sobrecarga.

 Permite uma melhor legibilidade do código implementado.

 Permite que novos tipos de dados fiquem totalmente integrados com a linguagem.

Métodos Virtuais

 As mensagens são vinculadas ao objeto no momento da execução - Vínculo Tardio.

 Permite maior flexibilidade de envio de mensagem.

 A mesma implementação de método pode se comportar de maneira diferente, em função do objeto que

enviou a mensagem.

 Diminui a eficiência.

 A maior parte das linguagens deixa a cargo do programador definir quais métodos serão virtuais.

Um exemplo de Orientação a Objetos

unit Datas; interface type TData = Class (TObject) private Dia, Mes, Ano : Integer; public constructor Init (d,m,a : integer); procedure DefVal (d,m,a : integer); function AnoBis : boolean; procedure Incrementa; procedure Decrementa; procedure Adiciona (NumDeDias : integer); procedure Subtrai (NumDeDias : integer); function GetText : string; private function DiasNoMes : Integer; end; implementation constructor TData.Init (d,m,a : integer); begin dia := d; Mes := m; ano := a; end; procedure TData.DefVal (d,m,a : integer); begin dia := d; Mes := m; ano := a; end; function TData.AnoBis : boolean; begin if (ano mod 4 <> 0) then AnoBis := false else if (ano mod 100 <> 0) then AnoBis := true else if (ano mod 400 <> 0) then AnoBis := False else AnoBis := True; end; function TData.DiasNoMes : integer; begin case Mes of 1,3,5,7,8,10,12 : DiasNoMes := 31; 4,6,9,11 : DiasNoMes := 30; 2 : if (AnoBis) then DiasNoMes := 29 else DiasNoMes := 28; end; end; 

procedure TData.Adiciona (NumDeDias : integer); var n : integer; begin for n := 1 to NumDeDias do Incrementa; end; procedure TData.Subtrai (NumDeDias : integer); var n : integer; begin for n := 1 to NumDeDias do Decrementa; end; end. 

Object Pascal

Introdução

Estrutura de um Programa

Program ;

[uses ;]

<seções de declaração>

begin.

<instruções>

end.

Identificadores

 São nomes assinalados a qualquer elemento em um programa escrito em Object Pascal.  É formado por uma seqüência de letras, dígitos e sublinhados, onde somente os 63 primeiros caracteres são significativos.  Não pode iniciar com um dígito.  Não são permitidos espaços em branco na formação do nome.

Características

 Tamanho Máximo da Linha: 126 caracteres  Toda instrução finaliza em um ponto-e-vírgula.

Seções de Declaração

<Seção de declaração de constantes>

<Seção de declaração de tipos>

<Seção de declaração de variáveis>

<Seção de declaração de procedimentos e funções>

Procedimentos Básicos de Entrada e Saída

Entrada

Readln ( <lista de variáveis> )

 Preenche uma variável com dados vindos do teclado. Exemplos:

Read ( Dia, Mes, Ano );

Read ( Nome );

Saída

Write ( )

ou

Writeln ( )

 Imprime os valores na janela principal da aplicação. O procedimento writeln move o cursor de impressão para a linha seguinte, após a impressão dos valores Exemplos:

Writeln ( Dia, '/', Mes, '/', Ano );

Write ( Nome );

Tipos

Tipos Inteiros

Tipo Faixa Formato Shortint -128 .. 127 8 bits Sinalizado Integer -32768 .. 32767 16 bits Sinalizado Longint -2147483648 .. 2147483647 32 bits Sinalizado Byte 0 .. 255 8 bits não Sinalizado Word 0 .. 65535 16 bits não Sinalizado

Tipos Booleanos

Tipo Memória False True Boolean 1 byte 0 1 ByteBool 1 byte 0 diferente de 0 WordBool 2 bytes (uma word) 0 diferente de 0 LongBool 4 bytes (duas words) 0 diferente de 0

Tipo Sub-Faixa

..

 É definido por um subconjunto de um tipo ordinal.  Possui as mesmas propriedades do tipo original.  Não é permitido faixa com valores do tipo longint. 

Tipo Enumerado

( )

 Define uma seqüência de identificadores como valores válidos para um tipo.  Cada elemento da lista de identificadores é associado seqüencialmente a números inteiros, iniciando pelo número 0.

Tipos Ordinais

 Tipos Inteiros e Booleanos  Char (armazena um caracter)  Tipo Sub-Faixa  Tipo Enumerado Os tipos ordinais permitem a utilização das seguintes funções: Função Descrição Ord Retorna o número de ordem do elemento no conjunto. Pred Retorna o elemento anterior. Succ Retorna o elemento seguinte. Low Retorna o primeiro elemento do conjunto. High Retorna o último elemento do conjunto.

Tipos Reais

Tipo Faixa Dígitos Significativos Tamanho em Bytes Real 2.9 * 10-39 .. 1.7 * 1038 11-12 6 Single 1.5 * 10-45 .. 3.4 * 1038 7-8 4 Double 5.0 * 10-324 .. 1.7 * 10308 15-16 8 Extended 3.4 * 10-4932 .. 1.1 * 104932 19-20 10 Comp -2 63 +1 .. 2 63 -1 19-20 8  O tipo Comp armazena somente números inteiros na faixa aproximada de -9.2 * 10^18 a 9.2 * 10^18.  Todos os tipos reais são armazenados no formato de ponto flutuante.  As operações em ponto flutuante podem ser executadas tanto por Hardware como emuladas por Software.

Tipo String

string

ou

string [ ]

 Armazena uma string com o tamanho máximo de até 255 caracteres.  Pode ser especificado um tamanho máximo menor que 255.  Permite a concatenação utilizando-se o operador +. 

Operadores

Aritméticos

  • (unário) Positivo
  • (unário) Negativo
  • (binário) Adição
  • (binário) Subtração
  • Multiplicação / Divisão real div Divisão Inteira mod Resto da Divisão Inteira

Lógicos

not Não and E or OU Inclusivo xor OU Exclusivo

Bit-a-bit

not Não and E or OU Inclusivo xor OU Exclusivo shl Deslocamento a esquerda shr Deslocamento a direita

Relacionais

= Igual

Maior < Menor <> Diferente = Maior ou Igual <= Menor ou Igual

Precedência

  • (unário), - (unário), not *, /, div, mod, and, shl, shr
  • (binário), - (binário), or, xor =, <>, <, >, <=, >=

Constantes

Categoria Definição Numérica Inteira Qualquer seqüência de dígitos decimais (0 a 9), sinalizados ou não, entre 2.147.483.648 e 2.147.483.647. Numérica Real Qualquer seqüência de dígitos decimais (0 a 9), sinalizados ou não, com um separador decimal ou em notação científica. Hexadecimal Qual seqüência de dígitos hexadecimais (0 a F), precedidos por um sifrão ($), 

entre $00000000 e $FFFFFFFF. Caracter Um único caracter entre apóstrofos ou o caracter # seguido de um número inteiro entre 0 e 255 (código ASCII). String Qualquer seqüência de caracteres escrito em uma linha de programa e delimitado por apóstrofos. Dois apóstrofos ëm seqüência dentro de uma string representam um único.

Seção de Declaração de Constantes

const

<declarações de constantes>

Declaração de Constantes Simples

= ;

Declaração de Constantes Tipadas

: = ;

 Utilizadas como variáveis inicializadas no momento da definição. 

Atribuição

<variável> := <expressão>

 Armazena um valor em uma variável. Exemplos:

Dia := 20;

Nome := 'José';

Seleção

Seleção Simples

 Permite que o fluxo de execução seja desviado em função de uma condição

if <condição> then

<instrução>

else

<instrução>

Exemplos:

if Nota < 5 then

Writeln('Reprovado')

else

Writeln('Aprovado');

Seleção Múltipla

 Permite que o fluxo de execução seja desviado em função de uma condição

case <expressão ordinal> of

<lista de opções> : <instrução>;

[else

<instrução>;]

end

Exemplos:

case EstadoCivil of

'C': Writeln('Casado');

'S': Writeln('Solteiro');

'D': Writeln('Divorciado');

'V': Writeln('Viúvo');

else

Writeln('Estado Civil Desconhecido');

end;

 A lista de opções pode ser um valor ordinal, uma seqüência de valores ordinais separados por vírgula ou uma faixa de valores.  A cláusula else é opcional e será executada caso nenhuma das opções corresponda ao resultado da expressão.  Os valores devem ser colocados em ordem crescente e não devem ser repetidos em mais de uma opção. 

Repetição

Repetição Contada

for <variável> := <início> to do

<instrução>

ou

for <variável> := <início> downto do

<instrução>

 A cláusula to da estrutura for incrementa um ao valor da variável a cada iteração.  A cláusula downto da estrutura for decrementa um do valor da variável a cada iteração.  O valor da variável é indefinido ao finalizar o precesso de repetição. Exemplos:

for Contador := 1 to 10 do

Writeln(Contador);

Repetição Condicional

while <condição> do

<instrução>

ou

repeat

<instrução 1>;

<instrução 2>;

<instrução 3>;

<instrução n>

until <condição>

 A estrutura while é executada enquanto a condição for verdadeira  A estrutura repeat é executada até que a condição seja verdadeira, ou seja, enquanto for falsa. Exemplos:

Soma := 0;

Read(Valor);

while Valor <> 0 do

begin

Soma := Soma + Valor;

Read(Valor)

end;

Writeln(Soma);

Soma := 0;

repeat

Read(Valor);

Soma := Soma + Valor;

until Valor = 0;

Writeln(Soma);