Técnicas de Programação para a Web. Luiz Cláudio Silva. Novembro de 2005. Apresentação



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

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

Introdução a Web. Programação para a Internet. Prof. Vilson Heck Junior

Projeto Integrador Gestão em TI II Gestão em Pessoas. Organograma DIRETOR DEPARTAMENTO DE T.I ANALISTA TÉCNICO

2ª edição. Daniel Adorno Gomes. Novatec

SCC Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Desenvolvimento de um sistema de leilão utilizando JavaServer Pages

Sistemas Distribuídos Apresentação da disciplina e proposta didática Prof. MSc Hugo Vieira L. Souza

Linguagens, Web Services e WEB 2.0

Desenvolvimento Web. Introdução Geral. Prof. Vicente Paulo de Camargo

Tecnologias de Desenvolvimento de Páginas web

Sistemas Distribuídos na Web

UNIVERSIDADE. Sistemas Distribuídos

World Wide Web e Aplicações

SOFTWARE DE CONTROLE DE ENTREGAS USANDO DISPOSITIVOS MÓVEIS E WEB SERVICE SOBRE A PLATAFORMA.NET

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

Desenvolvimento de Aplicações Corporativas Avançadas. Web Services

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

Programação WEB Introdução

Curso Técnico Concomitante em Informática MATRIZ CURRICULAR. Módulo/Semestre 1 Carga horária total: 400h. Módulo/Semestre 2 Carga horária total: 400h

Desenvolvimento para Web com Java

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Aula 4 Arquitetura de software na Web atual: AJAX e Ajax. Prof: Dra. Renata Pontin de Mattos Fortes

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles.

SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO WEB E MOBILE

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Microsoft.NET. Desenvolvimento Baseado em Componentes

Aplicando Composição e Orquestração de Serviços na Organização de Sistemas

Introdução ao Desenvolvimento de

Seminário - Qualidade de Software/Testes de Software

DESENVOLVIMENTO DE APLICAÇÕES E SERVIÇOS PARA OBSERVÁTORIOS VIRTUAIS RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA.

Curso Especializado Programador Web

Programação para Internet I. Fernando F. Costa

Serviços Web: Arquitetura

Desenvolvimento de Aplicações Distribuídas

PROTÓTIPO DE UM SISTEMA DE IMPORTAÇÃO PARA UMA AGÊNCIA DE TRANSPORTES INTERNACIONAIS

Web Services - Definição. Web Services - Introdução. Universidade Federal de Santa Catarina. DSOOII Web Services

PROGRAMAÇÃO ORIENTADA A OBJETOS -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

Arquiteturas para Sistemas Distribuídos I

Introdução a Web Services

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV1-01. Luiz Leão

Kassius Vargas Prestes

1.2.1 Modelo de referência para as tecnologias multimédia 12

Introdução a Web Services

Arquitetura de Aplicações J2EE. Jorge Fernandes Outubro de 2003

MATRIZ DA PROVA DE EXAME DE EQUIVALÊNCIA À FREQUÊNCIA A NÍVEL DE ESCOLA DE INTRODUÇÃO ÀS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO (PROVA 24)

ATIVIDADES PRÁTICAS SUPERVISIONADAS

1.1. Definição do Problema

Compreender as diferenças entre os vários métodos e códigos de erro HTTP. Conhecer as linguagens fundamentais para programação para a Web

INTRODUÇÃO AO. RESUMO

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

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

ATIVIDADES PRÁTICAS SUPERVISIONADAS

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS

SERVIÇOS WEB. Frankley Gustavo F. Mesquita, Tamiris Souza Fonseca. 27 de junho de 2016

5 - Qual é a principal vantagem de desenvolvimento de código por pares:

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

A Web, o Design, o Software Livre e outras histórias... Eduardo Santos -

/ 2012_1 6 ( ) ADM ( ) ADM COMEX ( ) ADM MKT

arquitetura shared-nothing em 3 camadas

Web Presentation Patterns - Controllers

Programação para Internet I

PROPRIEDADE INTELECTUAL, DIREITO E ÉTICA (AV)

Formação WEB com PHP. Subtítulo

1.2- Ambientes de Middleware

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator

Nesta disciplina aprenderemos. HTML CSS JavaScript Jquery PHP

PROGRAMAÇÃO PARA SERVIDOR APRESENTAÇÃO EM SISTEMAS WEB DA DISCIPLINA. Prof. Dr. Daniel Caetano

PROJETO DE REDES Prof. José Maurício S. Pinheiro UniFOA

UTILIZAÇÃO DE ARQUITETURA EM CAMADAS BASEADA NO MODEL VIEW CONTROLLER, EM APLICAÇÕES WEB

Universidade Federal Fluminense Mestrado em Sistemas de Telecomunicações. Disciplina: Fundamentos de Sistemas Multimídia.

I&DT na área das Tecnologias da Informação e Comunicação

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

AVISO Nº 02 - RETIFICAÇÃO. A Companhia de Processamento de Dados do Estado do Rio Grande do Sul PROCERGS, torna público, por este Aviso, o que segue:

JAVA PARA WEB E EJB APLICAÇÕES WEB, SERVIDORES DE APLICAÇÃO, CONTAINERS WEB

Gestão de Tecnologia da Informação

Web Services. (Introdução)

Web Services. Tópicos. Introdução (1/3) CONTEXTO HISTÓRICO WEB SERVICES Conclusões

Service Oriented Architecture SOA

Linux Essentials. Network Configuration

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST.

Desenvolvimento Web TCC Turma A-1

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

Fundamentos de Sistemas Operacionais

Conteúdo Programático

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS

Fundamentos de Redes e Sistemas Distribuídos Aula 03 Camadas

Tecnologias para Web Design

Invocação Remota. Prof. Leonardo Barreto Campos. 1/29

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV2-01. Luiz Leão

AJAX - Tutorial. Anselmo Luiz Éden Battisti, Christiano Julio Pilger de Brito. 18 de agosto de 2006

Administração Central Unidade de Ensino Médio e Técnico - CETEC. Plano de Trabalho Docente Ensino Técnico

Sérgio Koch Van-Dall

Transcrição:

Técnicas de Programação para a Web Luiz Cláudio Silva Novembro de 2005 Apresentação Objetivos Gerais Identificar os diversos modelos de funcionamento de uma aplicação Web Citar as caracterísitcas de uma aplicação Web, suas vantagens e desvantagens Utilizar HTML, JavaScript e CSS na criação de páginas Utilizar recursos básicos de Servlets para a criação de aplicações Web Utilizar recursos básicos de JSP para a criação de aplicações Web Utilizar o modelo MVC 2 para a criação de aplicações Web 1

Apresentação Sumário de Tópicos sobre Aplicações Web Criação de Páginas (revisão) Servlets JSP Modelo MVC 2 Metodologia Aula expositiva Prática dirigida Apresentação Infra-estrutura Java (J2SE SDK) Tomcat HSQLDB (drive JDBC) Editores de texto Avaliação Trabalho Final 2

Funcionamento da Web Sistema distribuído: clientes e servidores Protocolo definido: HTTP (aplicação TCP/IP) Modelo de comunicação síncrono: requests e responses Tipo básico de arquivo: HTML (JavaScript? CSS? XHTML?) Outros tipos de arquivos: texto e binários (MIME) Organização hierárquica de arquivos (diretórios) Páginas Estáticas HTML, JavaScript, CSS e recursos de animação (Flash, Applets, ActiveX e outros) Conteúdo gerado diretamente de arquivos armazenados Páginas estáticas ou dinâmicas (DHTML)? 2 camadas: navegador e servidor HTTP 3

Páginas Dinâmicas (Integração por CGI) HTML, JavaScript, CSS e recursos de animação (Flash, Applets, ActiveX e outros) Conteúdo gerado por chamadas a programas executáveis ou interpretados utilizando CGI (Common Gateway Interface) Programas executáveis: C, C++, outros Programas interpretados: UNIX Shell (bahs, ksh, etc.), Perl, Python, Ruby, outros 2 ou 3 camadas: navegador, servidor HTTP e servidor BD (nem sempre) Páginas Dinâmicas (Pré-processamento pelo Servidor HTTP) HTML, JavaScript, CSS e recursos de animação (Flash, Applets, ActiveX e outros) Conteúdo gerado pelo processamento de arquivos mistos : HTML, JavaScript, CSS e, também, linguagem de programação (código fonte) e/ou Server-Side Includes (SSI) Funcionamento: chamadas a interpretadores ou uso de extensões do servidor HTTP (CGI encapsulado ) Linguagens mais usadas: ASP, PHP, JSP 2 ou 3 camadas: navegador, servidor HTTP e servidor BD (nem sempre) 4

Páginas Dinâmicas (Servidor HTTP + Servidor de Aplicação) HTML, JavaScript, CSS e recursos de animação (Flash, Applets, ActiveX e outros) Conteúdo gerado por chamadas a servidores de aplicação (padrão definido pelo fabricante) Padrões mais utilizados: Java Servlets, DLL (MS IIS) e MS.Net 3 ou 4 camadas: navegador, servidor HTTP, servidor de aplicação e servidor BD (nem sempre) Alguns servidores de aplicação também atuam como servidores HTTP (ou vice-versa) Pode haver uma camada a mais: servidor de objetos distribuídos (Java RMI, J2EE EJB, MS DCOM, MS.Net, CORBA) Plataformas Proprietárias (Exemplos) Quem não é? Cold Fusion Zope Lotus Notes 5

Vantagens das Aplicações Web Manutenção e administração centralizada Liberdade de tráfego por firewalls: porta 80 TCP Pouco processamento do lado do cliente (será?) Pouca exigência de padronização no cliente (será?) Desvantagens das Aplicações Web Interface pobre (será?) Dificuldade em controlar o contexto e a navegação Muito processamento do lado do servidor: máquinas mais caras Aumento de tráfego na rede (comparado a aplicações desktop ) 6

Balanço Final Web: tecnologia de sucesso (viva Tim Berners-Lee!!!) Amplamente utilizada: Internet, Intranet, Extranet Escalável: do web server pessoal até o Google Padrão para desenvolvimeto de aplicações corporativas (incentivo dos grandes fornecedores) Emprego ultrapassando o previsto: configuração de software, programação de dispositivos, WBEM, WebDAV, Web Services, etc. Web Services Modelo aberto para a integração de aplicações (RPC?) Infra-estrutura baseada em HTTP: conhecida, extensível (cabeçalho) e sem problemas com firewalls Uso de XML para definição dos protocolos SOAP (Simple Object Access Protocol): troca de mensagens WSDL (Web Services Description Language): descrição do funcionamento UDDI (Universal Description, Discovery and Integration): diretório e busca Padrões WS-I (Web Services-Interoperability Organization): controle de acesso, segurança, BPM, etc. 7