World Wide Web e Aplicações

Documentos relacionados
Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com

A autoria - II. A autoria - II. Tecnologias básicas da Web. A autoria - II Wilson de Pádua Paula Filho. Tópicos:

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

WWW - World Wide Web

Linux - Servidor de Redes

CURSO EFA DE TÉCNICO DE INFORMÁTICA E SISTEMAS. Módulo 788- Administração de Servidores Web. Ano letivo Docente: Ana Batista

Programação WEB Introdução

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

GLOSSÁRIO. ActiveX Controls. É essencialmente uma interface usada para entrada e saída de dados para uma aplicação.

Desenvolvimento Web TCC Turma A-1

Sistemas para internet e software livre

UM NOVO CONCEITO EM AUTOMAÇÃO. Série Ponto

CAPÍTULO 2. Este capítulo tratará :

Tecnologias para Web Design

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

ESTUDO SOBRE AS LINGUAGENS DE PROGRAMAÇÃO HOSPEDEIRAS SUPORTADAS PELA FERRAMENTA HTML. Aluno: Rodrigo Ristow Orientador: Wilson Pedro Carli

Desenvolvimento de Aplicações Web

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)

CONCEITOS BÁSICOS DE INTERNET. Disciplina: INFORMÁTICA 1º Semestre Prof. AFONSO MADEIRA

2 Geração Dinâmica de Conteúdo e Templates de Composição

Programação Web Prof. Wladimir

IplanRio DOP - Diretoria de Operações GIT - Gerência de Infraestrutura Tecnológica Gerente da GIT

Programação para Web Artefato 01. AT5 Conceitos da Internet

Prof.: MARCIO HOLLWEG

Interface Homem Máquina para Domótica baseado em tecnologias Web

1.264 Aula 15. Ambientes de desenvolvimento da rede: Java Script Java Applets Java Servlets Páginas ativas de servidor

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Microsoft Internet Explorer. Browser/navegador/paginador

UFG - Instituto de Informática

Introdução à Tecnologia Web. Tipos de Sites. Profª MSc. Elizabete Munzlinger

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

Programando em PHP. Conceitos Básicos

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS

JSP trata-se de uma tecnologia que possibilita o desenvolvimento de páginas web dinâmicas utilizando todas as potencialidades do Java como linguagem

O sucesso da WWW. Atualização de Hiperdocumentos. Atualização de Hiperdocumentos. Cuidados. Exemplo. Passos. Motivos :

BEM-VINDOS AO CURSO DE ORIENTADO A OBJETOS

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Programação para Internet II

Escola Superior de Tecnologia de Setúbal. Projecto Final

Conteúdo Programático de PHP

Aula 4. Objetivos. Conteúdo dinâmico na internet.

Web Services. Autor: Rômulo Rosa Furtado

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:

A INTERNET E A NOVA INFRA-ESTRUTURA DA TECNOLOGIA DE INFORMAÇÃO

Software Adobe DreamWeaver. Requisitos para criar aplicações Web

UFG - Instituto de Informática

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Programação para Internet II

TECNOLOGIA WEB Aula 1 Evolução da Internet Profa. Rosemary Melo

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

18/04/2006 Micropagamento F2b Web Services Web rev 00

André Aziz Francielle Santos Noções de Internet

PRODUÇÃO CARTOGRÁFICA SERVIÇOS WEB

Associação Carioca de Ensino Superior Centro Universitário Carioca

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

Antonio Gomes de Araujo Laboratório de Eletrônica Industrial, Escola SENAI Anchieta São Paulo

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Kassius Vargas Prestes

Servlets e Applets, funcionamento e comparativo.

UNIVERSIDADE. Sistemas Distribuídos

Desenvolvendo para WEB

BANCO DE DADOS PARA WEB

Web. Web. Web. Web. Unidade 4. Conceitos básicosb. Publicação. Web: Frontpage Programa de animação gráfica. Programa de edição

Instalando o Internet Information Services no Windows XP

Engenharia de Software Aplicações de Internet

Rede de Computadores (REC)

Laudon & Laudon Essentials of MIS, 5th Edition. Pg. 9.1

Desenvolvimento de aplicações web com JSP

Introdução à Engenharia da Computação. Tecnologia Web Professor Machado

Java II. Sérgio Luiz Ruivace Cerqueira

Aplicativos para Internet Aula 01

IIH Introdução à Informática e Hardware

Curso de Aprendizado Industrial Desenvolvedor WEB

CRIAÇÃO DE SITES (AULA 1)

Noções de. Microsoft SQL Server. Microsoft SQL Server

ftp://ftp.cr-df.rnp.br/pub/netinfo/training/rnp/kit-bsb/html/guia.zip novembro 1996 Tutorial - Autoria em World Wide Web

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL

Instalar o MarkVision

19/05/2009. Módulo 1

Boas Práticas de Desenvolvimento Seguro

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

Treinamento em PHP. Aula 1. Ari Stopassola Junior


UFG - Instituto de Informática

Impressão do Manual do Utilizador

Guia de Consulta Rápida ASP. Rubens Prates. Novatec Editora.

Programação e Designer para WEB

Sistemas Distribuídos

Desenvolvimento Cliente-Servidor 1

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Transcrição:

World Wide Web e Aplicações Módulo H O que é a WWW Permite a criação, manipulação e recuperação de informações Padrão de fato para navegação, publicação de informações e execução de transações na Internet ou em Intranets Coleção disponível, distribuída de documentos e páginas com abrangência mundial Informações apresentadas através de interfaces gráficas intuitivas: popularidade da própria Internet Ferramenta de software na qual o Comércio Eletrônico está baseado 1

Arquitetura básica da Web HTML Browser Recursos Externos Browser Rede TCP/IP HTTP Páginas Web Programas CGI Browser Clientes Web Sevidor Web NOS TCP/IP Arquitetura Web Três padrões / protocolos básicos HTML Hypertext Markup Language Padrões para formatação e hyperlink HTTP - Hypertext Transport Protocol protocolo de comunição para interação cliente-servidor CGI - Common Gateway Interface interface para programas externos (não Web)

Uma Transação HTTP 1 Pedido Resposta Browser Web (Netscape Navigator, MS Explorer, Hot Java) Servidor Web (NCSA Server, MS Information Server, CERN Server, Apache) Páginas X Aplicações na Web Problema: HTML é limitada a exibição estática Formulários nos clientes permitem a transmissão de dados junto com uma requisição HTML Solução no cliente Pequenos programas e animações simples executando no browser JavaScript, Vbscript, Gifs animadas, flash. Execução no servidor Páginas Web realmente dinâmicas são geradas para cada acesso Útil para consultas / atualização de banco de dados Métodos para interação com banco de dados via Web: common gateway interface (CGI) database gateways Estes métodos funcionam como middleware para aplicações cliente-servidor sobre a Web 3

Abordagens para o desenvolvimento de páginas dinâmicas Todo processamento no servidor Recebe as requisições do cliente Executa o processamento necessário para criar a página Web dinamicamente Envia a página recém gerada para exibição pelo browser cliente Algum processamento no cliente Para formar a requisição a ser enviada para o servidor (ex.: crítica de dados) Para criar ou exibir a página dinâmica enviada em resposta Tecnologias disponíveis para a criação de páginas dinâmicas Tecnologias de processamento de dados na Web Processamento / Lado do servidor Processamento / Lado do cliente Programas compilados Scripts / Interpretados Programas compilados Scripts / Interpretados CGI (C, C++, Java, etc.) Java Servlets ASP.NET CGI (Perl) Microsoft Active Server Pages (ASP) Could Fusion Apache Software Foundation PHP Active X (Intranet) Java Applets Java Script VBScript Híbridos Java Server Pages (JSP) - script + compilado + Java Beans ASP.NET Banco de Dados 4

Processamento no Servidor - Básico Common Gateway Interface (CGI) protocol Método para a comunicação entre um formulário HTML e um programa servidor Programa: Perl, C, C++, Java, VisualBasic, etc. Passagem de informações entre servidor Web e programa é feita por variáveis de ambiente Desvantagem: cada formulário submetido dispara uma cópia do programa diferente consumo de processador e memória CGI (Common Gateway Interface) submissão 1 do formulário dados do formulário documento HTML 8 HTML 7 Servidor Web 3 variáveis de ambiente CGI HTML 6 transação de banco de dados 4 Programa ou script CGI 5 Servidor de Banco de Dados 5

Processamento no Servidor Soluções para o problema de se iniciar uma cópia do programa a cada requisição Permitem o controle de instâncias diferentes dos programas a serem executados (compilados ou scripts) Netscape - Netscape Service Application Programming Interface (NSAPI) Microsoft - Internet Server Application Programming Interface (ISAPI) Persistent CGI (Zope open source web server) FastCGI (extensões para vários Webservers) Java Servlet Interface Processamento no Servidor Scripts programas interpretados no servidor a cada requisição de cliente Exemplos de tecnologias que usam esta aboradgem (além de CGI + Perl...) Cold Fusion (.cfm) Microsoft Active Server Pages (.asp) Apache PHP (.php) LiveWire (Netscape Web Server) JScript (Microsoft Web Servers/ ASP) Programas Compilados código de máquina executado diretamente pela CPU Exemplos de tecnologias que usam esta abordagem (além de CGI + C, C++, Java, VisualBasic, etc.) Java Servlets ASP.NET 6

Processamento no cliente - Scripts Criar páginas dinâmicas e interativas na Web necessário suporte no browser (normalmente de terceiros) resultado pode ser diferente de browser para browser Sript enviando embutido no texto HTML Controle de objetos, conteúdo da página, mapas de imagem Crítica e autenticação de dados no cliente Exemplos: VBScript, JavaScript Processamento no Cliente Compilados Podem ser programas auto-contidos Podem fazer acesso direto ao banco de dados (sem usar HTTP ou servidores Web) Java Applets (Sun) Applet: um programa Java que executa no browser Browsers geralmente contém uma Máquina Virtual Java para execução de Applets Applets são geralmente pequenos para download e execução Componentes ActiveX (Micrsoft) -.NET aplicação auto-contida oferece uma interface para interação (e.x.: textbox, listbox) acesso ao sistema nativo (bom para Intranets, mas e para a Internet?) Problema de segurança via código malicioso 7

Processamento no cliente - Applets Arquivo.java 1 compilador Browser Interpretador específico Sistema Operacional 7 HTML + Applet 6 Arquivo.class Repositório de Applets 4 5 Pedido Servidor Web Modelo Utilizando Java Applets e CGI Applet Java 1 Pedido HTTP Resposta+Applet Cliente Submissão 3 4 formulário Resposta HTTP 6 Servidor Variáveis de ambiente CGI Resposta 5 Programa ou scrpit CGI 8

Modelo Utilizando Java Applets / Servlets e acesso direto ao BD Browser Interpretador específico Sistema Operacional 1 3 Pedido HTTP Resposta+Applet Submissão formulário Resposta HTTP 8 Servidor Web 4 Invocação direta e passagem de parâmetros HTML 7 transação de banco de dados 5 Servlet 6 9 Invocação de Método Remoto (RMI) Resposta 11 Programa (servidor)java 10 Servidor de Banco de Dados Mantendo estado na Web Muitas aplicações requerem que uma série de interações sejam completadas para concretizar uma transação. O estado da aplicação deve ser mantido entre as interações. Exemplo caixa eletrônico o número da conta e a senha tem que ser lembrados durante toda a sessão A Web foi desenvolvida como um ambiente que não registra estado a conexão entre browser e servidor é terminada quando a carga da página termina o servidor não tem memória do que ele transmitiu Como fazer para realizar uma operação bancária ou uma compra virtual através da Web? 9

Mantendo o estado - Cookies Pequenos arquivos texto Conteúdo: URL do servidor, número de ID, outros códigos Criado pelo servidor Web; armazenado no Web browser Windows cria uma pasta cookies Uso de cookies: personalização do site: ID do usuário, disponibilização de conteúdo específico rastreamento do Web site: quem visitou, que páginas eles acessaram no site marketing direto: anúncios baseados no perfil do usuário, rastreia anúncios já exibidos sistemas de pedido on-line memorizar o conteúdo do carrinho de compras, etc. Diretivas para desenvolvimento de aplicações Web Processamento local / cliente Bom proporciona respostas mais rápidas aumenta a escalabilidade do sistema Ruim pode aumentar o tempo de resposta para o carregamento de uma página Web aumenta o tráfego na rede Utilização de processamento no servidor para respostas conforme o cliente Estudo do equilíbrio para cada caso (depende um pouco da plataforma) 10