Tecnologias para
Internet
Thyago Maia Tavares de Farias
Aula 5
Sumário
Arquiteturas de sistemas Web
Arquitetura de duas camadas (cliente-servidor)
Arquitetura de três camadas
Camada de Apresentação
Formulários HTML
JavaScript
Arquitetura de duas camada
Também conhecida como arquitetura cliente-servidor;
Resolve o problema de custos de processamento da
arquitetura de uma camada;
Baseada na divisão de trabalho (componentes);
Tipos de divisão
Thin Client: Cliente implementa apenas a interface gráfica;
Servidor implementa a lógica e gerenciamento de dados;
Thick Client: Cliente implementa a interface gráfica e a lógica
de negócio; Servidor implementa o gerenciamento de dados;
Arquitetura de três camadas
Cada uma das camadas resolve e cuida de problemas
específicos;
Cada uma das camadas envolve um componente e sua
separação é facilmente identificável;
Camadas existentes:
Camada de apresentação: Cuida da interface do usuário;
Camada lógica: Ponte entre apresentação e dados;
Camada de gerenciamento de dados: representado por um
ou mais SGBDs;
Arquitetura de três camadas
Arquitetura de três camadas
Exemplo: matrículas em cursos
Utilidade: Sistema online para matrículas de estudantes em
cursos;
O sistema de gerenciamento de dados cuida das informações
dos estudantes, dos cursos, das turmas, requisitos, etc;
O servidor de aplicação mantém a lógica para adicionar
cursos, turmas, fazer matrículas, tec;
O programa cliente (Web ou não) cuida do login de
diferentes usuários, apresentação de formulários, saída de
dados, etc;
Arquitetura de três camadas
Vantagens:
Permite que a melhor tecnologia seja aplicada em
cada camada;
Manutenção, modificação e substituição de cada
camada é feita de forma independente;
Permite clientes “leves”;
Códigos da lógica centralizados;
Componentização;
Camada de Apresentação
No detalhamento da camada de apresentação,
abordaremos as tecnologias que existem no lado
do cliente da arquitetura de três camadas.
Camada de Apresentação
Serão discutidos nessa sessão:
Formulários HTML;
JavaScript;
CSS (Folhas de estilo)
Formulários HTML
Utilizados na comunicação entre a camada de
apresentação e a camada lógica;
Usados para captar diferentes tipos de entradas
do usuário:
Campos de texto;
Caixas de seleção;
Campos de escolha;
Campos de senha;
Entre outros...
Formulários HTML
Estruturas que permitem aos usuários submeter
dados;
Os dados submetidos podem ser tratados e/ou
armazenados na camada de gerenciamento de
dados, dependendo da aplicação;
Formato:
<form action=“” method=“” name=“”>
...
</form>
Formulários HTML
Cada atributo da tag form tem um significado e
utilidade:
Action: Especifica a URI para onde será
encaminhado o conteúdo do formulário;
Method: Especifica o método pelo qual serão
enviados os dados. Existem dois métodos:
GET e POST (Mais detalhes adiante);
Name: Especifica o nome do formulário
Formulários HTML
Entre <form> e </form> especificamos os
elementos de entrada do formulário:
Tag input (campos e botões);
Tag select (caixas de seleção);
Tag textarea (áreas de texto);
Exemplos de tags para elementos de entrada:
<input type=“text” name=“nome” />
<input type=“password” name=“senha” />
Formulários HTML
Tag input
Pode ter vários atributos. Os mais importantes são:
Type: Especifica o tipo do campo de entrada, que pode
ser text (campo de texto), password (campo de senha),
reset (botão para resetar campos) e submit (botão que
dispara o envio de conteúdo para o servidor);
Name: especifica o nome do campo para que este possa
ser identificado na camada lógica;
Value: Especifica o valor padrão (o conteúdo) do campo;
Formulários HTML
Exemplo – Formulário com a tag input:
<form action=“” method=“post”>
<input type=“text” name=“login”/>
<input type=“text” name=“senha”/>
<input type=“submit” value=“Enviar”/>
<input type=“reset” value=“limpar”/>
</form>
Formulários HTML
Métodos GET e POST
Utilizando o method=“get” na tag form, fazemos
com que o conteúdo do formulário seja codificado
na URI;
Exemplo: http://thyagomaia.com?campo1=valor
No caso do method=“post”, os campos de entrada
do formulário vão embutidos na requisição HTTP,
invisível para o usuário;
Formulários HTML
Exemplo – Formulário com o method=“get”:
<form action=“http://www.teste.com”
method=“get”>
<input type=“text” name=“login”/>
<input type=“text” name=“senha”/>
<input type=“submit” value=“Enviar”/>
<input type=“reset” value=“limpar”/>
</form>
JavaScript
Linguagem de script utilizada na camada de
apresentação;
Aplicações em JavaScript rodam NO
CLIENTE;
Utilizada para:
Comunicação com servidores;
Validar formulários;
Adicionar funcionalidades;
Entre outros...
JavaScript
JavaScript está usualmente embarcada em
páginas HTML;
Qualquer pessoa pode utilizar JavaScript. Não
há necessidade de se adquirir qualquer licença;
Lembre-se: JavaScript e Java não são a mesma
coisa!
JavaScript é Case Sensitive;
JavaScript
O que podemos fazer com JavaScript?
Programar pequenas aplicações web;
Inserir conteúdo dinâmico em uma página HTML;
Prever e reagir a eventos;
Ler e escrever em elementos HTML;
Validar dados;
Entre outros;
JavaScript
A tag HTML <script> é usada para inserir
código JavaScript em uma página HTML;
Exemplo:
<html>
<body>
<script type=“text/javascript”>
document.write(Date());
</script>
</body>
</html>
JavaScript – Exemplo 2
<html>
<head>
<script type="text/javascript">
function show_alert()
{
alert(“Sport Recife – Campeão Brasileiro!");
}
</script>
</head>
<body>
<input type="button" onclick="show_alert()"
value=“Mostrar caixa de alerta" />
</body>
</html>