Técnicas de Programação para a Web
Upcoming SlideShare
Loading in...5
×
 

Técnicas de Programação para a Web

on

  • 4,027 views

 

Statistics

Views

Total Views
4,027
Views on SlideShare
4,026
Embed Views
1

Actions

Likes
1
Downloads
39
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Técnicas de Programação para a Web Técnicas de Programação para a Web Document Transcript

  • 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 – Conceitos Gerais 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
  • Conceitos Gerais • 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) Conceitos Gerais • 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
  • Conceitos Gerais • 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) Conceitos Gerais • 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
  • Conceitos Gerais • 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) Conceitos Gerais • Plataformas Proprietárias (Exemplos) – Quem não é ? – Cold Fusion – Zope – Lotus Notes 5
  • Conceitos Gerais • 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á ?) Conceitos Gerais • 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
  • Conceitos Gerais • 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. Conceitos Gerais • 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