Vous êtes sur la page 1sur 51

Introduo s Linguagens

Programao
BREVE INTRODUO

Professora Ftima Santos

Porqu estudar os conceitos das linguagens de


Programao?
Aumentar a capacidade de expressar ideias
Melhorar os conhecimentos sobre linguagens de

modo saber escolher as mais apropriadas para


cada problema
Aumentar a capacidade de aprender novas
linguagens
Melhor compreenso dos detalhes de
implementao
Compreender os avanos da computao na
generalidade
Professora Ftima Santos

Porque existem diversos tipos de linguagens?


Porque os domnios de aplicao da computao

so bastante diversos

Aplicaes Cientificas
Aplicaes Comerciais
Inteligncia Artificial
Programao de Sistemas
Execuo de lista de comandos (Linguagens de Script)
Domnios Especficos
Internet !!!

Professora Ftima Santos

Porqu mais linguagens? (1)


Aumentar a facilidade de leitura e escrita
Simplicidade & Ortogonalidade
Instrues de controlo de fluxo
Tipos de dados & Estruturas
Suporte abstraco
Sintaxe
Expressividade
Fiabilidade (deteco de erros)
Verificao de tipos (type checking)
Inicializao
Inexistncia de Aliasing
Tratamento Excepes
Facilidade de leitura e escrita

Professora Ftima Santos

Porqu mais linguagens? (2)


Custo (esta caracterstica funo de muitas outras)
Aprendizagem

Simplicidade
Ortogonalidade
Experincia

Leitura e escrita da linguagem


Adequao da linguagem ao problema

Eficincia da execuo

Desenho da linguagem
Optimizaes
Eficincia da compilao

Correces
Modificaes

Escrita de Programas

Eficincia da Compilao
Eficincia da Execuo

Ambiente de desenvolvimento
Pouca fiabilidade
Manuteno

Portabilidade e reutilizao
Input & Output
Bibliotecas

Professora Ftima Santos

Influncias no desenho das linguagens


Alm das caractersticas anteriores, outros

factores influenciam o desenho das linguagens:

Arquitectura dos computadores


Metodologias de Desenvolvimento de SW

Professora Ftima Santos

Metodologias
Top-down design and stepwise refinement
(1970-1975)

Process Oriented ==> Data Oriented


(1975)

Abstract Data Type


(1975-1980)

Object Oriented
(1980-)

Professora Ftima Santos

Paradigmas da programao
As linguagens so catalogadas segundo os

paradigmas de programao que suportam:

Programao Imperativa
Orientadas

por aces
Fundador: FORTRAN (FORmula TRANslator)

Programao Funcional
Fundador:

Programao baseada em Lgica


nico

LISP (LISt Processor)

membro: Prolog (Programmation en logique)

Programao Orientada por Objectos


Objecto

= atributos + operaes
Fundador: SIMULA (SIMULAtion)

Professora Ftima Santos

Implementao das linguagens


As linguagens de programao podem ser

implementadas atravs de trs mtodos genricos:

Interpretao
Compilao

Professora Ftima Santos

Compilador e/ou Interpretador


Nvel
Linguagem

COMPILADOR

INTERPRETADOR

Programa

Programa

Interpretador
Nvel
Mquina

Programa em cdigo
de mquina

Mquina

O Compilador traduz um

programa escrito em
determinada linguagem
para a linguagem da
mquina alvo

Professora Ftima Santos

Mquina

O Interpretador eleva a

mquina ao nvel da
linguagem, para que o
programa se execute a
partir da fonte.

Compilador
Programa

Programa

input

Compilador

Cdigo

Compile
Time
Run
output Time

caracteres

Analisador
lxico
tokens

Analisador
sintctico
parser tree

A linguagem que o compilador traduz designada por


linguagem fonte (source language)
Aps o processo de traduo, o programa executa-se da
forma mais eficiente possvel .
Muitos erros so detectados durante a compilao
Podem ser feitas optimizaes automticas

Analisador
semantico
parser tree

Gerador de
cdigo
intermdio

cdigo
intermdio

Gerador de
cdigo
de mquina

cdigo
mquina

Cdigo
Professora Ftima Santos

Interpretador
Programa

input

Interpretador

output

A linguagem pode ter uma maior flexibilidade


O programa portvel no seu formato original
As partes comuns da linguagem (bibliotecas) fazem parte do interpretador em vez
do programa

Algumas linguagens adoptam uma tcnica mista


Compilador para cdigo intermdio & Interpretador
Os interpretadores podem ser mais eficientes com a tcnica JIT

Professora Ftima Santos

Como se comea a Programar


EXEMPLOS
SIMBOLOGIA

Professora Ftima Santos

Introduo s Linguagens
Programao
LINGUAGEM ORIENTADA POR OBJECTOS

Professora Ftima Santos

1. O que o VBA

VBA - "Visual Basic for application". uma linguagem de


programao que permite aos utilizadores dentro das
aplicaes windows efectuar tarefas mais complexas.
Existe VBA para Excel, VBA para Word, VBA para
Access, etc.

O VB deriva do Basic, linguagem criada nos anos 70 para


ser usada em mquinas com recursos limitados. A
Microsoft desenvolveu-a com o VB e introduziu-a como
componente das aplicaes Windows criando o VBA..
Professora Ftima Santos

1. Porqu o VB?
Caracteristicas da linguagem VB /VBA:

Rene os conceitos comuns a todas as linguagens

Permite uma abordagem orientada para objectos


Permite a integrao com as aplicaes Windows

Minimiza os custos de software

Permite uma transio fcil para desenvolvimento de aplicaes WEB

Metodologia de ensino da linguagem VB /VBA:

Promover o desenvolvimento de programas


bem estruturados
bem organizados

Professora Ftima Santos

2. Sintaxe e Semntica

A definico do VBA, como de qualquer outra


linguagem, comporta dois aspectos: a forma da

linguagem e o significado associado a essa forma. A


estes aspectos d-se o nome de sintaxe e semntica
da linguagem.

Professora Ftima Santos

2. Sintaxe e Semntica (continuao)

Sintaxe
Conjunto de regras que definem as relaes que se podem
estabelecer entre os componentes de uma linguagem. A sintaxe

tem apenas a ver com o processo de combinao dos simbolos, e


pode portanto ser fcilmente formalizada. sintaxe de uma
linguagem natural d-se o nome de gramtica.

Professora Ftima Santos

2. Sintaxe e Semntica (continuao)


A formalizao de uma gramtica inclui os seguintes
componentes:

1. simbolos terminais - conjunto de simbolos que aparecem nas


frases da linguagem, e que no podem ser definidos custa de outros
2. simbolos no terminais - conjunto de simbolos que no aparecem
nas frases da linguagem, mas so usados para descrever os seus
componentes
3. um simbolo no terminal especial - simbolo inicial - que
representa o componente principal da linguagem
4. regras de produco - conjunto de regras que estabelecem a forma
de gerar os diversos componentes da linguagem.

Um dos formalismos mais usados para descrever uma


gramtica so os diagramas sintacticos.
Professora Ftima Santos

2. Sintaxe e Semntica (continuao)


Exemplo: Estrutura de uma frase em Portugus

frase
sintagma
nominal
artigo

Professora Ftima Santos

nome

JOO

sintagma
verbal

sintagma
nominal

verbo

COMEU

artigo

nome

SOPA

2. Sintaxe e Semntica
(continuao)

Simbolos terminais:

Simbolos no terminais:

o
joo
comeu
a
sopa
frase
sintagma nominal
sintagma verbal
artigo
nome
verbo

Simbolo inicial: frase


Regras de produo:

Professora Ftima Santos

'uma frase um sintagma verbal seguido de um sintagma nominal"


um sintagma nominal um artigo seguido de um nome... etc.

2. Sintaxe e Semntica (continuao)


Especificaco da gramtica usando diagramas
sintcticos

1. Um diagrama sintctico define o simbolo no terminal que


aparece no seu canto superior esquerdo

2. Compe-se de setas que ligam simbolos terminais e/ou no


terminais

3. Simbolos no terminais so representados dentro de caixas

Professora Ftima Santos

2. Sintaxe e Semntica (continuao)


frase

sintagma nominal

sintagma verbal

sintagma nominal
artigo

nome

verbo

sintagma nominal

sintagma verbal

nome

joo
sopa

... etc.
Professora Ftima Santos

2. Sintaxe e Semntica (continuao)


Semntica

A especificao da semntica de uma linguagem no


fcil. Embora existam mtodos formais para o fazer,
a abordagem a seguir baseia-se na descrio em
linguagem natural das entidades a definir.

Professora Ftima Santos

2. Sintaxe e Semntica (continuao)


Tipos de erros num programa
erros sintcticos

ocorrem quando as instrues do programa no so escritas de acordo


com a gramtica da linguagem usada

erros semnticos (ou lgicos)

ocorrem quando o cdigo escrito pelo programador no efectua a


sequncia lgica de passos prevista por este

Os erros sintcticos so fceis de encontrar e corrigir o


compilador encarrega -se de os apontar, e normalmente d
uma indicaco do tipo de erro. O programa s corre quando
no existem mais erros sintcticos, mas...

Professora Ftima Santos

2. Sintaxe e Semntica (continuao)


... ento surgem os erros semnticos. A sua deteco
normalmente mais difcil, e podem fazer com que o
programa exiba comportamentos inesperados.
Voltando ao exemplo anterior, considere as seguintes frases:
"A

SOPA COMEU O JOAO"

"O

COMEU SOPA O JOAO"

"A

JOAO COMEU O SOPA"

Em Informtica, d se o nome
de "bugs" aos erros de um
programa. O processo de
identificaco e correcco dos
erros denomina -se "debugging"

Verifique se tm erros, identifique-os e diga a que tipo


pertencem.
Professora Ftima Santos

3. Definio de Identificadores

Identificadores so nomes que se usam para

referir objectos num programa. Em VBA,


existem regras a que se tem de obedecer para
que um conjunto de caracteres seja um
identificador vlido:
Um identificador tem de comear com uma letra, e depois pode
conter qualquer srie de dgitos ou letras.
Professora Ftima Santos

3. Definio de Identificadores
(continuao)
Exemplos de identificadores
RTP1
HiFolks
Top40
IdentificadorEnorme

nomes ilegais como identificadores


2H30M
super homem
Top 40

Professora Ftima Santos

4. Tcnicas de Indentao

Indentaco do cdigo de um programa


1. No escrever mais do que uma instruo em cada
linha.
2. As instrues devem ser indentadas, de tal forma
que instrues que pertenam ao mesmo grupo
devem estar indentadas do mesmo nmero de
colunas.

Professora Ftima Santos

5. Ambiente Trabalho VB

Project o nome que o VB atribu ao novo


trabalho;
Toolbox caixa de ferramentas, onde se
encontram diversos objectos grficos e outros
genericamente designados por controlos
(controls);
Formulrio encontra-se ao centro, a que
podemos colocar ou desenhar objectos ou
controlos da toolbox.

Professora Ftima Santos

5. Ambiente Trabalho VB

Project Explorer Window onde podemos


procurar e aceder aos formulrios ou outras
unidades do projecto;
Propperties Window Janela onde podemos
ver e alterar as propriedades de cada
objecto.

Professora Ftima Santos

6. Fases de desenvolvimento do projecto

1) Desenho do Interface;
2) Escrita do Cdigo;
3) Teste, depurao e aperfeioamento;
4) Finalizao do projecto.

Professora Ftima Santos

7. Programao

Private Sub command1.click


Indica tratar-se de
um procedimento
exclusivo(privado)

Professora Ftima Santos

Tipo de
procedimento
(Sub function)

Nome do
Objecto

Evento associado
ao objecto

8. Guardar um projecto

Menu File ou boto Save Project.


Depois de guardar ter que ter pelo menos
dois ficheiros: project.vbp;

formulrio.frm.

Professora Ftima Santos

9. Criar um ficheiro executvel

Menu File Make project1.exe

Professora Ftima Santos

10. Propriedades de um Formulrio


Propriedades Descrio

Backcolor

Define a cor de fundo do formulrio

Caption

Define o ttulo (da barra de ttulo)

Name

Designa o nome interno do formulrio

Top

Define a distncia do form em relao ao


topo do ecr

Left

Define a distncia do form em relao


margem esquerda do ecr

Height

Define a altura do form

Width

Define a largura do form

Professora Ftima Santos

11. Propriedades de um Rtulo


Propriedades

Descrio

Backcolor

Define a cor de fundo do objecto

Forecolor

Define a cor do texto escrito no objecto

Caption

Define o ttulo (da barra de ttulo)

Name

Designa o nome interno do objecto

Font

Permite definir os tipos grficos da fonte de texto

Alignment

Permite definir o alinhamento do texto

Visible

Permite tornar o objecto visvel ou invisvel no form

Top

Define a distncia do objecto em relao ao topo do ecr

Left

Define a distncia do objecto em relao margem esquerda do


ecr

Height

Define a altura do objecto

Width

Define a largura do objecto

Professora Ftima Santos

12. Propriedades de uma Caixa de Texto


Propriedades

Descrio

Backcolor

Define a cor de fundo do objecto

Forecolor

Define a cor do texto escrito no objecto

Text

Define o ttulo (da barra de ttulo, I/O)

Name

Designa o nome interno do objecto

Font

Permite definir os tipos grficos da fonte de texto

Alignment

Permite definir o alinhamento do texto

Visible

Permite tornar o objecto visvel ou invisvel no form

Locked

Permite bloquear ou desbloquear a escrita ou alterao do texto na caixa

MaxLenght

Permite definir o nmero mximo de caracteres que podem ser escritos

Multiline

Permite escolher entre uma s linha de texto ou vrias

ScrollBars

Permite incluir barras de rolamentos

Top

Define a distncia do objecto em relao ao topo do ecr

Left

Define a distncia do objecto em relao margem esquerda do ecr

Height

Define a altura do objecto

Width

Define a largura do objecto

Professora Ftima Santos

13. Propriedades de um Boto de Comando


Propriedades

Descrio

Caption

Define o texto a apresentar no boto de comando

Name

Designa o nome interno do boto de comando

Font

Permite definir os tipos grficos da fonte de texto

Visible

Permite tornar o objecto visvel ou invisvel no form

Enabled

Permite alternar entre boto activo e boto inactivo

Top

Define a distncia em relao ao topo do ecr

Left

Define a distncia em relao margem esquerda do


ecr

Height

Define a altura do boto de comando

Width

Define a largura do boto de comando

Professora Ftima Santos

Exemplos
Pretendemos um

programa que d as Boas


vindas ao utilizador, ao
clicar no boto de
comando.
1 label;
1 text;
1 command button

Label1.caption=Bem Vindo ao VB

Professora Ftima Santos

Pretendemos um

programa que ao clicar


no boto de comando
este nos d a data numa
label e a hora numa text.
Label1.caption=Date
Text1.text=Time

Exerccio
Interface Grfico
Apagar Texto

Rtulo

Caixa de Texto

label1.caption=
Text1.text=

Cor de Fundo
Apagar Texto

Cor de Fundo

Repor Texto

Cor de Texto

Label1.backcolor=vbyellow
Text1.backcolor=vbcyan
Repor Texto
Label1.caption=Rtulo
Text1.text=Caixa de Texto

Cor de Texto

Professora Ftima Santos

Label1.forecolor=vbred
Text1.forecolor=vbblue

14. Outros objectos ou controlos da toolbox


Objecto

Designao

Line

Permite desenhar linhas. A espessura de uma linha definida na


propriedade BorderWidth e a sua cor na propriedade BorderColor.

Shape

Permite desenhar formas geomtricas. Propriedade Shape, onde se


pode escolher a forma. Propriedade Backcolor, define a cor de fundo
da forma. Propriedade Backstyle, tornar visvel a cor de fundo, ter
que escolher Opaque.

Picture Box

Permite inserir figuras a partir de ficheiros de imagens, mas tambm


outros objectos ou controlos (container).

Image

Permite apresentar imagens de ficheiros.

Frame

Destina-se agrupar outros objectos ou controlos.

Option Button

utilizado, normalmente, em grupos, para permitir a escolha de uma


s opo entre vrias possveis.

Check Button

utilizado para marcar ou desmarcar opes. No implicam uma


escolha nica.

List Box

Permitem apresentar uma lista de itens de informao e,


eventualmente, seleccionar um ou mais desses itens.

Professora Ftima Santos

15. Objectos, propriedades, mtodos e eventos


O conceito de objecto tem associado a si as

propriedades que assumem valores e os mtodos que


fazem executar operaes.
Exemplo :
Picture1.cls (limpa o contedo que nela
tenha sido escrito);
Text1.Move Text1.left + 100 (faz mover a
caixa para uma nova posio);
Form1.Hide
Form1.Show
Professora Ftima Santos

15. Objectos, propriedades, mtodos e eventos


O evento click um dos previstos para muitos objectos;
Change (alteraes) aplicvel, por exemplo a caixas de

texto;
GotFocus (foco recebido)e LostFocus (foco perdido)
aplicvel por exemplo a botes de comando;
Keypress (pressionar de uma tecla) aplicvel a muitos
objectos;
MouseMove (Movimento do rato) aplicvel a muitos
objectos.
Exemplo: Numa caixa de texto alterar change para
MouseMove, dentro do procedimento escrevemos
text1.move text1.left + 100

Professora Ftima Santos

16. Principais tipos de instrues bsicas


Operaes de input ou

entrada de dados;

Operaes de

processamento;

Operaes de output ou

sada de dados.

Professora Ftima Santos

Inputbox uma funo

que apresenta uma caixa


para entrada de dados.
Operaes aritmticas;
operaes de alterao
de propriedades de
objectos;
accionamento de
mtodos;
Msgbox uma funo
vocacionada para
apresentar mensagens.

17. Tipos de Dados


Tipo

N Bytes Utilizao

Byte

Inteiros pequenos (0 a 255)

Integer

Inteiros (-32 768 a 32b767)

Long

Inteiros grandes (de a + 2 mil milhes)

Single

Nmeros com casas decimais (simples at 6 dgitos de


preciso)

Double

Nmeros com casas decimais (dupla at 14 dgitos de


preciso)

Currency

Valores numricos em formato monetrio

Date

Datas

Boolean

Verdadeiro /Falso

String

Varivel

Cadeias de caracteres ou texto

Variant

Varivel

Adaptvel a qualquer tipo de dados

Professora Ftima Santos

17.1 . Constantes
Constantes intrnsecas

Constantes nomeadas

determinados valores
predefinidos
internamente pelo VB,
como por exemplo,
vbblue.

so criadas no momento
da programao.
Exemplo:
Const Pi As Single
=3,14159;
Const Nome =Ana
Marques

Professora Ftima Santos

18. Variveis
So nomes atribudos a espaos de memria onde

podem ser guardados valores, os quais podem sofrer


alteraes ao longo da execuo do programa.
Declarar uma varivel: Dim identificador [as tipo].
Exemplo:
Dim valor As long;
Dim taxa1, taxa2 As Single.

Professora Ftima Santos

19. Operadores Aritmticos


Operador

Significado

Adio

Subtraco

Multiplicao

Diviso Real

Diviso inteira

Mod

Resto da diviso inteira

Exponenciao

SQR

Raiz quadrada

&

Concatenao

Professora Ftima Santos

Exerccios
Desenhamos um rtulo, duas caixas de texto, onde

suposto o utilizador escrever os dois nomes. O


formulrio contm tambm dois botes de comando
que devem efectuar as seguintes operaes:
1) juntar os dois nomes num rtulo em branco;
2) trocar os nomes entre as caixas de texto.

Professora Ftima Santos

Resoluo
Juntar nomes

Trocar os nomes

Label3.caption=

Dim str1, str2 as string

text1.text & text2.text

Professora Ftima Santos

Str1=text1.text
Str2=text2.text
Text1=Str2
Text2=Str1

Vous aimerez peut-être aussi