aula 1 - fundamentos web servidor instituto metodista izabela hendrix curso de tecnologia em...

17
Aula 1 - Fundamentos Aula 1 - Fundamentos Web Servidor Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros – Agosto/2010 Linguagens Web Servidor

Upload: benedicto-terra-franca

Post on 07-Apr-2016

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Aula 1 - Fundamentos Web Aula 1 - Fundamentos Web ServidorServidor

Instituto Metodista Izabela HendrixCurso de Tecnologia em Análise e Desenvolvimento de Sistemas

Prof. Gilmar Medeiros – Agosto/2010

Linguagens Web Servidor

Page 2: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

SumárioSumário Histórico do desenvolvimento Web Histórico do desenvolvimento Web

ServidorServidor Applets e CGIApplets e CGI Motivação - Web ServidorMotivação - Web Servidor Web Cliente x Web ServidorWeb Cliente x Web Servidor Protocolos de ComunicaçãoProtocolos de Comunicação Tecnologias-chave:Tecnologias-chave:

Servidor ou Container WebServidor ou Container Web IDE para desenvolvimento – NetBeansIDE para desenvolvimento – NetBeans Linguagens de ProgramaçãoLinguagens de Programação

Page 3: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Histórico – Desenvolvimento Histórico – Desenvolvimento Web ServerWeb Server

Fase 1: desenvolvimento de aplicações Fase 1: desenvolvimento de aplicações estáticas:estáticas: Predominou o uso do HTMLPredominou o uso do HTML Páginas web muito simples, sempre com o Páginas web muito simples, sempre com o

mesmo conteúdomesmo conteúdo Fase 2: desenvolvimento de aplicações Fase 2: desenvolvimento de aplicações

dinâmicasdinâmicas Páginas mais elaboradas, com conteúdo Páginas mais elaboradas, com conteúdo

dinâmicodinâmico Uso inicial de applets e CGI – common Uso inicial de applets e CGI – common

gateway interfacegateway interface

Page 4: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Applets e CGIApplets e CGI Applets:Applets:

Pequenos programas inseridos em uma Pequenos programas inseridos em uma página HTML;página HTML;

Limitações: códigos dispersos, baixa Limitações: códigos dispersos, baixa segurança para os navegadoressegurança para os navegadores

CGI:CGI: Scripts – normalmente escritos em C ;Scripts – normalmente escritos em C ; Código nativo, dificuldade de portabilidade Código nativo, dificuldade de portabilidade

para outras plataformas;para outras plataformas; Baixa escalabilidadeBaixa escalabilidade

Page 5: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Web Servidor – Motivação - IWeb Servidor – Motivação - I Em que consiste o desenvolvimento Em que consiste o desenvolvimento

web servidor?web servidor? Artefatos/tecnologias:Artefatos/tecnologias:

métodos armazenados – uso de conceitos métodos armazenados – uso de conceitos OO;OO;

interação com bancos de dados – JDBC ou interação com bancos de dados – JDBC ou frameworks de persistência, como o frameworks de persistência, como o Hibernate;Hibernate;

desenvolvimento em camadas (ex: MVC);desenvolvimento em camadas (ex: MVC); aplicação de conceitos modernos de aplicação de conceitos modernos de

engenharia de software e padrões de projeto engenharia de software e padrões de projeto

Page 6: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Web Servidor – Motivação - Web Servidor – Motivação - IIII

Envolve:Envolve: Uso de Páginas HTML ou XHTML;Uso de Páginas HTML ou XHTML; Navegador, que faz a requisição e Navegador, que faz a requisição e

recebe uma resposta;recebe uma resposta; Servidor ou Container Web, responsável Servidor ou Container Web, responsável

por retornar a resposta a uma por retornar a resposta a uma requisição (transação) executada no requisição (transação) executada no servidor, via página HTML de respostaservidor, via página HTML de resposta

Linguagem: script – ex: PHP, ASP ou Linguagem: script – ex: PHP, ASP ou mais rebuscada – ex: Java EE ou .NETmais rebuscada – ex: Java EE ou .NET

Page 7: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Web Cliente x Web Servidor Web Cliente x Web Servidor - I- I

Web Cliente:Web Cliente: Escopo limitado ao navegador;Escopo limitado ao navegador; Todas as funcionalidades de Todas as funcionalidades de

programação devem ser fornecidas pelo programação devem ser fornecidas pelo navegador – como CSS, JavaScriptnavegador – como CSS, JavaScript

O que exceder o escopo do navegador O que exceder o escopo do navegador ou tecnologias associadas (ex: Flash, ou tecnologias associadas (ex: Flash, tecnologias RIA – Rich Internet tecnologias RIA – Rich Internet Applications), deve ser atendido por Applications), deve ser atendido por servidores ou containers webservidores ou containers web

Page 8: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Web Cliente x Web Servidor Web Cliente x Web Servidor - II- II

Web Servidor:Web Servidor: Responsável por receber uma requisição do Responsável por receber uma requisição do

cliente, por exemplo um formulário HTML cliente, por exemplo um formulário HTML com dados e fornecer uma resposta, com dados e fornecer uma resposta, também via página HTMLtambém via página HTML

Existe um protocolo responsável pelo Existe um protocolo responsável pelo tráfego dos dados via rede de comunicação, tráfego dos dados via rede de comunicação, o protocolo HTTP (Hypertext Transfer o protocolo HTTP (Hypertext Transfer Protocol)Protocol)

O HTTP é capaz de extrair os dados O HTTP é capaz de extrair os dados relevantes de uma página HTML, como os relevantes de uma página HTML, como os dados de um formulário, para executar o dados de um formulário, para executar o processamento dos mesmosprocessamento dos mesmos

Page 9: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Protocolo HTTPProtocolo HTTP O protocolo HTTP – RFC 2616 - se O protocolo HTTP – RFC 2616 - se

destina a transferir solicitações e destina a transferir solicitações e arquivos pela Internet ou uma intranet arquivos pela Internet ou uma intranet local;local;

independe da plataforma ou independe da plataforma ou tecnologia utilizada;tecnologia utilizada;

É necessária a digitação de uma URL É necessária a digitação de uma URL no navegador, para acesso ao no navegador, para acesso ao protocolo. Ex: protocolo. Ex: http://www.deitel.com/books/downloads.html

Page 10: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Partes da URLPartes da URLhttp://www.deitel.com/books/downloads.html http:// - indica que o recurso deve ser obtido http:// - indica que o recurso deve ser obtido

pela utilização do protocolo HTTP;pela utilização do protocolo HTTP; www.deitel.com – indica o nome do host onde – indica o nome do host onde

o recurso reside, sendo traduzido em um o recurso reside, sendo traduzido em um endereço IP por um servidor de DNS;endereço IP por um servidor de DNS;

/books/downloads.html – especifica recurso /books/downloads.html – especifica recurso solicitado, isto é, downloads.html, encontrado solicitado, isto é, downloads.html, encontrado em /books, no sistema de arquivos do servidor em /books, no sistema de arquivos do servidor web. Também chamado caminho de contexto.web. Também chamado caminho de contexto.

Obs: normalmente o caminho indica um Obs: normalmente o caminho indica um diretório virtualdiretório virtual, traduzido pelo servidor em , traduzido pelo servidor em um local realum local real

Page 11: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

HTTP: Solicitação e HTTP: Solicitação e Resposta - IResposta - I

Page 12: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

HTTP: Solicitação e Resposta - HTTP: Solicitação e Resposta - IIII

Page 13: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Métodos HTTPMétodos HTTP Métodos mais comuns: GET e POSTMétodos mais comuns: GET e POST

GET:GET: POST:POST:

Outros métodos HTTP – Outros métodos HTTP – não comumente não comumente utilizadosutilizados:: HEADHEAD CONNECTCONNECT TRACETRACE PUTPUT DELETEDELETE OPTIONSOPTIONS

Page 14: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Tecnologias-Chave - ITecnologias-Chave - I Java EE – Enterprise Edition: Servlets e JSPsJava EE – Enterprise Edition: Servlets e JSPs

HTTP request e response:HTTP request e response:

Java Server Faces: provê novas interfaces e Java Server Faces: provê novas interfaces e facilidades de navegação para a Web, baseadas facilidades de navegação para a Web, baseadas em Servlets e JSPsem Servlets e JSPs

Page 15: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Tecnologias-Chave - IITecnologias-Chave - II Servidores Web: Tomcat, Glassfish, Servidores Web: Tomcat, Glassfish,

WebSphere, Weblogic, Jboss, etc.WebSphere, Weblogic, Jboss, etc.

Outras tecnologias de Outras tecnologias de desenvolvimento web servidor:desenvolvimento web servidor: RubyRuby GroovyGroovy Frameworks tais como Spring, StrutsFrameworks tais como Spring, Struts Etc.Etc.

Page 16: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

Arquitetura MVCArquitetura MVC Model – View – Controller: Model – View – Controller:

Model: camada de modelo ou dadosModel: camada de modelo ou dados View: camada de visualização, View: camada de visualização,

interfaceinterface Controller: camada de controle, Controller: camada de controle,

interage entre as camadas de modelo interage entre as camadas de modelo e visualizaçãoe visualização

Page 17: Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros

ReferênciasReferências * SIERRA, KATHY; BASHAN, BRIAN. Use a * SIERRA, KATHY; BASHAN, BRIAN. Use a

Cabeça! Servlets e JSP, 2a Edição, 2009. Editora Cabeça! Servlets e JSP, 2a Edição, 2009. Editora Alta Books.Alta Books.

DEITEL & DEITEL: Ajax, Rich Internet DEITEL & DEITEL: Ajax, Rich Internet Applications e Desenvolvimento Web para Applications e Desenvolvimento Web para programadores. 1a Edição, 2008. Editora programadores. 1a Edição, 2008. Editora Pearson Prentice Hall.Pearson Prentice Hall.

Resumo sobre o protocolo HTTP, e link para a Resumo sobre o protocolo HTTP, e link para a RFC 2616: RFC 2616: http://simplesideias.com.br/tags/rfc-2616/