Você está na página 1de 21

Programação de

Aplicações e Sítios
Web Dinâmicos
Turma: M2
UFCD: 9952
50 Horas
Rui Ferreira – ruiferreira@itap.pt
Classroom - M2-9952
Objetivos
Pedagógicos
Programação de aplicações e sítios
web dinâmicos
• Identificar tecnologias web de servidor;
• Distinguir entre linguagens procedimentais e declarativas;
• Criar e manipular bases de dados usando uma linguagem declarativa;
• Utilizar declarações de gestão de bases de dados em scripts de servidor;
• Utilizar uma linguagem de scripting de servidor;
• Programar funcionalidades web, eficientes e seguras suportadas por bases
de dados.
Conteúdos
Pedagógicos
Programação de aplicações e sítios
web dinâmicos
• Programação do lado do servidor
• Ambientes, linguagens e ferramentas de desenvolvimento;
• Integração de scripts em páginas web;
• Sintaxe e estruturas básicas de uma linguagem de scripting de servidor;
• Gestão de bases de dados e de ficheiros remotos;
• Pesquisas sobre bases de dados;
• Variáveis de ambiente, autenticação, sessões, manipulação de erros;
Que caminho a percorrer…
Programar é o processo pelo qual um programador escreve, numa linguagem de programação,

o código-fonte de um software;

Envolve ordenar, estruturar ou compor uma série de ações cronológicas para atingir um

objetivo;

Este código-fonte indicará ao programa informático o que tem de fazer e de que forma, ou seja,

o que queremos que o computador faça;

Daí vem uma grande questão: que caminho a percorrer para atingir este objetivo?

 Tarefa difícil para a maioria das pessoas;

 Antes de começar a Programar é necessário desenvolver lógica de programação;

É necessário construir um ALGORITMO.


Algoritmo
 ALGORITMO, o que é um algoritmo?
 “Algoritmo” é um termo de referência ao matemático árabe do século IX, Al Khowarizmi,
que foi o responsável por descrever regras para as equações matemáticas;
 É um conjunto de passos bem definidos para encontrar uma resolução de um problema;
 Sequências finitas, deverá ter um fim;
 Na verdade, cada sequência deve ser simples sendo executada num intervalo de tempo
finito;
 As sequências lógicas, ou seja, deve existir uma ordem de execução dos passos da
sequência;
 As ações devem ser escritas sem ambiguidades, isto é, o algoritmo não pode ter duas
interpretações;
 Um algoritmo devolve um ou mais resultados (saídas), podendo não exigir dados de
entrada;
 NOTA IMPORTANTE: Um algoritmo é “uma solução” e não “a solução” de um problema.
Exemplos: Algoritmo
Como trocar um pneu furado?
Para trocar um pneu furado:
1. Parar o carro e ligar os quatro piscas;
2. Vestir o colete refletor;
3. Colocar o triângulo de sinalização a 30 metros do carro, visível e a 100
metros de distância;
4. Retirar o pneu suplente e o equipamento necessário do porta-bagagem
de veículo;
5. Desapertar ligeiramente os parafusos;
6. Colocar o macaco debaixo do carro até a roda não tocar no chão;
7. Retirar os parafusos do pneu furado uma a uma com o auxílio da
chave;
8. Retirar o pneu furado;
9. Colocar o pneu suplente;
10.Apertar os parafusos;
11.Retirar macaco;
12.Arrumar o pneu furado, o equipamento e retirar o triângulo de
sinalização;
13.Prosseguir viagem .
Exemplos: Algoritmo
Como fazer um bolo?

Bolo de Iogurte:
1. Pré-aqueça o forno a 180 oC;
2. Unte uma forma de chaminé com manteiga e reserve;
3. Numa taça, junte o iogurte e os ovos. Utilize a medida do copo de iogurte e
adicione o açúcar, o óleo, a farinha e o fermento;
4. Bata com uma batedeira até a massa estar homogénea;
Receita:
5. Deite a massa na forma de chaminé, previamente untada, e leve ao forno Bolo de Iogurte do Pingo Doce

durante 40 a 45 minutos, ou espete um palito na massa e verifique se sai limpo;


6. Retire do forno e deixe arrefecer ligeiramente antes de desenformar;
7. Antes de servir, polvilhe com o açúcar em pó.
Algoritmo
E tudo pode ser um algoritmo?
Podemos construir um algoritmo para qualquer coisa?
Qualquer tarefa que siga uma sequência poderá ser representada por um algoritmo.
Por exemplo, qual o próximo número da sequência numérica: 2, 4, 6, 8, ____? Obviamente, estamos a
falar dos números pares. Logo, o valor seguinte é o número anterior acrescentado de duas unidades,
sendo o próximo valor da sequência o número 10.
Como há um sequência/padrão, seria fácil construir um algoritmo para essas tarefas.
Porém, se considerarmos a sequência 0,1,4,9,17,25,____, qual será o próximo número? Complicado?
Como não conseguimos definir uma lógica para o cálculo do próximo número, nós não conseguiríamos
construir um algoritmo para essa tarefa, pois não temos uma “fórmula” para calcular que número vem a
seguir. Desta forma, para podermos construir um algoritmo para um problema, esse problema tem de ter
uma lógica. Senão, não será possível solucioná-lo de forma a ser executado por um computador. Vale
pena lembrar que, algumas vezes, pode ser complicado encontrar a lógica do problema facilmente.
Fases da Construção de Algoritmos
• O que fazer para começar um algoritmo?
• Necessitamos de dividir o problema em três fases fundamentais: Entrada, Processamento
e Saída;
• Entrada: São os dados de entrada do algoritmo, os valores que vai usar no processamento
para chegar à solução do problema. Esses dados de entrada, geralmente, são fornecidos
pelo utilizador, fazendo uso de algum dispositivo de entrada de dados, tal como, um
teclado, rato ou um leitor de código de barras;
• Processamento: São procedimentos utilizados para chegar ao resultado final, para
alcançar a resolução do problema. Estes procedimentos são executados no processador
do computador e os valores são armazenados na memória (memória RAM);
• Saída: São dados já processados. É o resultado do processamento. Estes dados de saída
são apresentados em dispositivos de saída;
Representação de Algoritmos
Sendo assim, se pensarmos, veremos que muitas coisas que fazemos são um algoritmo e
possuem essas três fases. Por exemplo, quando eu falo com alguém, eu espero o que a pessoa
vai me dizer (entrada), então penso (processamento) e dou uma resposta (saída).
Ficará mais fácil começar a organizar a sequência lógica do algoritmo, se identificarmos no
problema nestas três fases:
Fases da Construção de Algoritmos
Depois de identificarmos as etapas do problema, como fazer o algoritmo?
Um algoritmo pode ser apresentado de três formas: Descrição Narrativa, Fluxograma e
Linguagem Algorítmica, também chamada de Estruturada ou Pseudocódigo.

Descrição Narrativa:
Fazendo do uso do português
narrado/fala, com o objetivo
de descrever os passos
principais da solução para um
problema.
Uma receita de bolo, por Tomar Banho: Calcular a média:
exemplo, é uma descrição 1. Entrar na casa de banho e tirar a 1. Obter as notas das provas;
roupa; 2. Calcular a média aritmética das
narrativa. 2. Abrir a torneira do chuveiro; notas;
Outros exemplos podem ser: 3. Entrar na água; 3. Se a média for maior ou igual a
4. Ensaboar-se; 9,5, é apresentado uma
tomar banho ou calcular a 5. Passar por água; mensagem que diz aprovado,
média de um aluno. 6. Fechar a torneira; senão mostra uma mensagem
7. Sair da água; que o aluno está reprovado.
8. Secar;
9. Vestir-se.
Fases da Construção de Algoritmos
Fluxograma:
Tentando eliminar as ambiguidades da descrição narrativa, o fluxograma, passou a fazer uso de
símbolos gráficos padronizados para representar algoritmos. É representado por formas
geométricas diferentes que implicam ações, instruções ou comandos distintos. Isso pode ajudar
no entendimento do algoritmo e a eliminar as ambiguidades. Esta forma é intermediária à
descrição narrativa e ao pseudocódigo, pois é mais precisa do que a primeira, porém, não se
preocupa com detalhes de implementação do programa, como o tipo das variáveis usadas.
Este são os principais símbolos do fluxograma (Figuras em baixo). Além desses símbolos, as setas
que os unem, indicarão a direção do fluxo de execução do algoritmo. E dentro de cada símbolo,
deve ser escrito o que ocorrerá naquela fase.

Início ou Fim Decisão Processo Processo Operação Conector Documento Fluxo de linha
pré-definido Manual
Fases da Construção de Algoritmos
Fluxograma:
Supomos um algoritmo para calcular a média de um aluno. Como seria?

INÍCIO
INÍCIO

N1, N2
N1, N2

Média <- (N1+N2)/2


Média <- (N1+N2)/2

Média Média
“Aprovado”
>= 9,5

FIM

“Reprovado” FIM
Fases da Construção de Algoritmos
Fluxograma:
Se verificarmos primeira parte do algoritmo é igual ao primeiro fluxograma. Porém, a partir desse
ponto, precisamos usar o símbolo de decisão. O texto que é colocado dentro desse símbolo, é
neste momento que fazemos a questão, ou seja, inserimos uma condição. Se “A média é maior ou
igual a 9,5?”. Caso a resposta à pergunta for verdadeira (V), então é-nos mostrado a palavra
“Aprovado”. Senão, se a resposta a pergunta for falso (F), é apresentado a palavra “Reprovado”.
Em qualquer um dos casos, depois de mostrar o resultado “Aprovado” ou “Reprovado”, o
fluxograma termina, indicando que o algoritmo termina. Para isso, usamos o símbolo de Fim.

INÍCIO INÍCIO

N1, N2 N1, N2 Média


>= 9,5

Média <- (N1+N2)/2 Média <- (N1+N2)/2


Fases da Construção de Algoritmos
Linguagem Algorítmica ou Pseudocódigo:
O pseudocódigo é uma linguagem artificial e informal que ajuda os programadores a desenvolver
algoritmos. Esta forma de representação de algoritmos é a mais rica em detalhes. Assim, a
definição dos tipos das variáveis usadas no algoritmo é também a mais completa e, por
assemelhar-se bastante à forma em que os programas são escritos, é muito bem aceite. Na
realidade, esta representação é suficientemente geral para permitir que a tradução de um
algoritmo nela representado para uma linguagem de programação específica seja praticamente
direta.
A forma geral da representação de um algoritmo na forma de pseudocódigo é a seguinte:

Algoritmo
<nome_do_algoritmo>
<declaração_de_variáveis>
<subalgoritmos>
Início
<corpo_do_algoritmo>
Fim
Fases da Construção de Algoritmos
Linguagem Algorítmica ou Pseudocódigo:
Algoritmo é a palavra que indica o início da definição de um algoritmo em forma de
pseudocódigo;

<nome_do_algoritmo> é um nome simbólico dado ao algoritmo com a finalidade de distingui-lo


dos outros;

<declaração_de_variáveis> é uma forma opcional onde são declaradas as variáveis globais


usadas no algoritmo principal e, eventualmente, nos subalgoritmos;

<subalgoritmos> é uma forma opcional do pseudocódigo onde são definidos os subalgoritmos;

Início e Fim são respetivamente as palavras que delimitam o início e o fim do conjunto de
instruções do corpo do algoritmo.
Fases da Construção de Algoritmos
Linguagem Algorítmica ou Pseudocódigo:
Segue-se a representação de um algoritmo do cálculo da média de um aluno, na forma de
pseudocódigo:

Algoritmo Calcular Média


Var N1, N2, Média
Início
Leia N1, N2
Média <- (N1+N2)/2
Se Média<9,5
Então
Escreva “Reprovado”
Senão
Escreva “Aprovado”
Fim
Fases da Construção de Algoritmos
Em conclusão:

Conclui-se que há diversas formas de representação de algoritmos que diferem entre si pela
quantidade de detalhes de implementação que fornecem ou, inversamente, pelo grau de
abstração que possibilitam em relação à implementação do algoritmo em termos de uma
linguagem de programação específica.
Das principais formas de representação de algoritmos destacam-se as que vimos: a descrição
narrativa, o fluxograma convencional e o pseudocódigo (ou linguagem algorítmica ou
estruturada).
Vamos desenvolver…

FIM
1ª PARTE!

Você também pode gostar