Você está na página 1de 18

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;
Programação do lado do servidor
 Websites Dinâmicos - Programação do lado do servidor são conjuntos de

informações personalizadas em resposta a solicitações HTTP;

 HTTP - Hypertext Transfer Protocol:  sigla HTTP é um protocolo de comunicação

utilizado para sistemas de informação de hipermídia, distribuídos e colaborativos.

Ele é a base para a comunicação de dados da World Wide Web;

 Os módulos fornecem uma introdução genérica à programação do lado do servidor,

juntamente com guias específicas no uso de frameworks web Ex: Django (Python) e

Express (Node.js / JavaScript), PHP para criar aplicações e desenvolvimento web;


Programação do lado do servidor
- O que é um servidor (web server)?

 "Servidor web (web server)" estamo-nos a referir ao hardware ou ao software, ou a

ambos;

 O hardware, um servidor web é um computador que arquiva ficheiros que constituem

os sites (por exemplo, documentos HTML, imagens, folhas de estilo, e arquivos

JavaScript) e os envia para o dispositivo do utilizador final. Têm de estar ligado à

Internet e pode ser acedido através do seu nome de domínio (DNS), como por

exemplo itap.pt;

 O software, um servidor web inclui diversos componentes que controlam os

utilizadores a acederem a ficheiros armazenados, no mínimo um servidor HTTP;


Programação do lado do servidor
- O que é um servidor (web server)?

 Um servidor HTTP é um software que compreende URLs (endereços web - Uniform

Resource Locator) e HTTP (o protocolo que o browser utiliza para visualizar páginas

web - HyperText Transfer Protocol);

 Num nível básico, o browser fará uma requisição utilizando o protocolo HTTP sempre

que necessitar de um ficheiro armazenado no servidor web. Quando a requisição

alcançar o servidor web correto (hardware), o servidor HTTP (software) enviará o

documento requerido, também via HTTP.

HTTP Request
Ficheiros
WEB SERVER Browser
HTTP SERVER
HTTP Response
Programação do lado do servidor
- Introdução à Web

 Para publicar um website, é necessário ou um servidor web estático ou dinâmico;


 Um servidor web estático consiste em um computador (hardware) com um servidor HTTP
(software). É chamado "estático" porque o servidor envia os ficheiros tal como foram
criados e armazenados para o browser;
 Um servidor web dinâmico consiste em um servidor web estático com software adicional,
mais conhecido como um servidor de aplicações (application server) e com a utilização de
base de dados (database). É chamado "dinâmico" porque o servidor de aplicações atualiza
os ficheiros/arquivos/imagens antes de os enviar para o browser através do servidor HTTP;
 Por exemplo, para produzir as páginas web que visualizamos no browser, o servidor de
aplicações (dinâmico) pode completar um modelo de página HTML (HTML template) com o
conteúdo armazenado na base de dados. Sites como o MDN Web Docs ou o Wikipédia
possuem vários milhares de páginas web, mas as páginas que compõe estes sites não são
realmente documentos HTML, mas alguns templates HTML e uma gigantesca base de dados.
Com esta configuração, de desenvolvimento de páginas, agiliza e facilita a gestão e a entrega
dos conteúdos;
Programação do lado do servidor
- Introdução à Web – Site estático vs Site Dinâmico

SITE ESTÁTICO SITE DINÂMICO


 Não permite alterações ao conteúdo;  Possui funcionalidades que permitem
 Simplicidade no seu constantes alterações de conteúdo,
desenvolvimento/criação devido à sua complexidade de
desenvolvimento;
 Mais rápido a mostrar a informação;
 Não é necessário alterar o código fonte;
 Não há necessidade de fazer gestão,
modificações ou manutenção de conteúdos  Permite fazer atualizações com
constantemente; facilidade e com maior frequência
 Manutenção dispendiosa;  Ideal para interagir com o publico,
promoção de produtos com um visual
 Fraca interação com os
mais atrativo;
utilizadores/publico;
 Baixo custo;
 Custo elevado;

 Ideal para informação essencial;


 Mais eficaz com as redes socias;
Programação do lado do servidor
- Introdução à Web – Site estático vs Site Dinâmico

SITE ESTÁTICO - HTML SITE DINÂMICO - PHP


<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <body>
<title>Título da Página</title>
</head> <h1>My first PHP page</h1>
<body>
<?php
<h1>Isto é um cabeçalho</h1> echo "Hello World!";
<p>Isto é um parágrafo</p> ?>

</body> </body>
</html> </html>
Programação do lado do servidor
- Introdução à Web – SERVER SIDE

 SQL - SQL é uma linguagem padrão para armazenar, manipular e recuperar dados em
base de dados;

 MySQL – É um sistema de gestão de base de dados relacional amplamente utilizado. O


MySQL é gratuito e de código aberto é ideal para aplicações pequenas e grandes;

 PHP - PHP é uma linguagem de script de servidor e uma ferramenta poderosa para criar
páginas da Web dinâmicas e interativas;

 ASP - ASP significa Active Server Pages - ASP é uma estrutura de desenvolvimento para a


construção de páginas da web;

 Node.js - Node.js é um ambiente de servidor de código aberto. Node.js permite executar


JavaScript no servidor;
Programação do lado do servidor
- Introdução à Web

 Para carregar uma página web, como já foi dito, o browser envia uma requisição ao

servidor web, que procura o ficheiro/arquivo requisitado na base de dados ou no seu

armazenamento. Ao encontrar o ficheiro/arquivo, o servidor web realiza a leitura, faz

os processamentos necessários e o envia ao browser. Vamos olhar mais

detalhadamente para essas etapas:

 SERVIDO FICHEIROS

 Um servidor web precisa de armazenar os ficheiros/arquivos dos websites, como

todos os documentos HTML e arquivos, que incluem imagens, páginas de estilo CSS,

arquivos JavaScript, fontes e vídeos, etc;


Programação do lado do servidor
- Introdução à Web

 Tecnicamente, podemos servir todos os ficheiros/arquivos no próprio computador. Mas, é

muito mais conveniente armazená-los em um servidor web dedicado que:

 Está sempre em funcionamento;

 Esteja sempre online;

 Têm o mesmo endereço IP (configurado um IP fixo);

 Manutenção mantida por um fornecedor de servidores;

 COMUNICAR ATRAVÉS DO HTTP

 Segundo, um servidor web, este fornece suporte para HTTP (protocolo de transferência de

hipertexto). Como o próprio nome indica, o HTTP especifica como transferir ficheiros de hipertexto

(ou seja, documentos vinculados da web) entre dois computadores.


Programação do lado do servidor
- Introdução à Web

 COMUNICAR ATRAVÉS DO HTTP…

 Um protocolo é um conjunto de regras para comunicação entre dois computadores. HTTP é

um protocolo textual sem estado.

 Textual

 Todos os comandos são de texto simples e legíveis por humanos.

 Sem estado

 Nem o servidor nem o cliente se lembram de comunicações anteriores. Por exemplo, confiando

apenas no HTTP, um servidor não se consegue lembrar da senha introduzida ou da etapa em que o

utilizador está em uma transação.


Programação do lado do servidor
- Introdução à Web

 COMUNICAR ATRAVÉS DO HTTP…


 O HTTP fornece regras claras sobre como um cliente e um servidor se comunicam.
 Somente clientes podem fazer requisições HTTP, para servidores. Servidores podem
apenas responder a uma requisição HTTP dos clientes;
 Quando fizer a requisição de um arquivo via HTTP, os clientes devem fornecer a URL do arquivo;
 O servidor web deve responder a todas as requisições HTTP, mesmo que seja com uma mensagem
de erro;
Programação do lado do servidor
- Introdução à Web

 COMUNICAR ATRAVÉS DO HTTP…


 Num servidor web, o servidor HTTP é responsável por processar e responder as requisições
recebidas.
1. Ao receber uma requisição, um servidor HTTP deve confirma se a URL requisitada corresponde ao
arquivo existente;
2. Se confirmar, o servidor web envia o conteúdo do arquivo de volta ao browser. Senão, o servidor de
aplicações cria o arquivo necessário;
3. Se nenhum dos processos for possível, o servidor web devolve uma mensagem de erro ao
navegador, mais conhecido como "404 Not Found".

Utilizador Alojamento Website


Browser Servidor Acesso ao site
Programação do lado do servidor
- Introdução à Web

 RESUMINDO - CONTEÚDO ESTÁTICO VS. DINÂMICO

 Numa maneira geral, um servidor pode fornecer conteúdo estático e dinâmico. "Estático"

significa "da forma que está". Websites estáticos são os mais fáceis de configurar.

 "Dinâmico" significa que o servidor processa o conteúdo ou o gera a partir de uma base de

dados. Esta solução fornece mais flexibilidade, mas a arquitetura fica mais difícil de

funcionar, fazendo com que seja mais complexo desenvolver site.

Você também pode gostar