Programação e Designer para WEB Introdução Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Introdução a hipertexto. A linguagem HTML. Ambientes para programação em HTML. Linguagem de Programação PHP. Conceitos de usabilidade e usabilidade para Web. 1
Bibliografia Livro texto NIEDERAUER, Juliano. Desenvolvendo Websites com PHP : Aprenda a criar Websites dinâmicos e interarativos. 2ª ed. São Paulo: Novatec, 2004. Básica MELO, Alexandre Altair De. PHP profissional : aprenda a desenvolver sistemas profissionais orientados a objetos compadrões de projeto. 1ª ed. São Paulo: Novatec, 2008. BUDD, Andy; MOLL, Cameron; COLLISON, Simon. Criando Páginas Web com CSS : Soluções avançadas para padrões WEB. 1ª ed. São Paulo: Pearson Education, 2007. Metodologia Aula expositiva Dinâmicas de grupo Debates Exercício em classe Laboratório Avaliação 40% Atividades (3,0) Avaliação (7,0) 60% Atividades (3,0) Avaliação Oficial (7,0) Metodologia e Avaliação 2
Cronograma Por Que????? Por que estudar programação para WEB? 3
Mundo que muda rapidamente A era da informação Especialmente na área da tecnologia da informação e computação Agricultura Passado: 100 acres para produção agrícola Hoje: 1 acre (otimização e desempenho) 1950 inicio da era da informação Desenvolvimento do computador 1990 popularização dos computadores Internet História Ambiente WEB 1960. Rand Corporation Pesquisa patrocinada pela força aéra americana Como desenvolver uma rede de comunicação distribuída Robusta Consiga sobreviver a um ataque nuclear ARPANET Agência do departamento de defesa americano 4 pontos de comunicação entre faculdades amercianas Percursor da internet Transmission Control Protocol/Internet Protocol (TCP/IP) Conjunto de protocolos de comunicação Conectar redes separadas em uma grande rede Inicialmente somente serviços básicos Correio eletrônico, transferência de arquivos e login remoto 4
Quem são seus usuários? Quem são seus usuários? 5
WebServer Smtp DNS Servidor de Arquivos Firewall Scripts WebServices WebMail Intranet Extranet Será que existe algum tipo de programação? Definindo alguns termos Endereço IP Endereço lógico que referência uma máquina no protocolo TCP/IP WebBrowser Navegador ( lê páginas em html) Navegadores antigos (http://browsers.evolt.org/) WebServer Servidor que mantém as páginas hospedadas Possui um serviço que roda na porta 80. Ex: Apache, IIS, TomCat HTTP Protocolo de transferência de hipertexto FTP Serviço de transferência de arquivos DNS Tradução de Nomes em endereço IP SMTP e POP Protocolos de transferência de mensagens (e-mail) 6
Ambiente WEB estático Servidor IIS Apache Cliente Browser IE FireFox Ambiente Web Dinâmico Servidor Web Cliente Navegadores Servidores de BD 7
Aparelhinhos interessantes Porta retratos IP http://www.ceiva.com/ O menor servidor Web do mundo http://www-ccs.cs.umass.edu/~shri/ipic.html Tostadeira habilitada para a Web + Previsão do tempo http://dancing-man.com/robin/toasty/ Geladeira com acesso a internet http://www.lge.com fonte: www.nuperc.unifacs.br/suruagy/redes Segurança Ataques a aplicativos web. Fonte: http://www.milw0rm.com 8
E a questão de segurança Seu firewall cuida dos problemas na programação das aplicações web? História World Wide Web 1991, Berners Lee (Cern) e colaboradores Introduziu o conceito de WWW Ajudaram na adoção de padrões da web Hypertext Transfer Protocol (HTTP) Hypertext Markup Language (HTML) Universal Resource Locator (URL) Definição sistema de hipertexto gráfico que roda sobre a Internet, e é Global, interativo, dinâmico, mutiplataforma, distribuído (Lymay; Colburn, 2006) 9
Sistema de Hypertexto Permite a você ler e navegar por texto e informações visuais de uma maneira não linear Pular de um ponto a outro Obter mais informações Voltar Navegar entre tópicos Navegação através de hyperlinks (links) Passado navegadores via DOS MOSAIC Primeiros navegadores gráficos Gráfico e fácil de navegar Histórico sites http://archive.org 10
Multi-plataforma Não importa a arquitetura do computador Acesso via qualquer dispositivo Distribuído Não tem um servidor de arquivos central Todos os dados são armazenados em inúmeros hosts espalhados pela Internet Cada hosts possui uma identificação (IP) ou nome (DNS) 11
Dinâmico Conteúdo muda a todo momento Help desk Mecanismos de pesquisas Sites de notícias, relacionamentos, etc.. Interativo Ter uma resposta a sua ação. Exemplos: Navegação Chats Educação a distância Voz sobre IP 12
WebServer Software que responde a requisições HTTP Entrega páginas para o web browser do cliente Hospeda domínios Página estáticas: html Páginas dinâmicas Exemplos: Internet Information Server IIS Apache Apache TomCat Exercícios Estime a quantidade de dispositivos diferentes que poderão surgir nos próximos anos e suas funcionalidades. 13
Processo de registro de um domínio Registrar o nome do domínio Nacional http://www.registro.br Internacional Várias empresas são credenciadas (http://www.internic.com/alpha.html) 2 servidores de DNS Traduzem o nome www.seila.com para um endereço IP 200.200.20.1 Consultando servidores DNS nslookup www.seila.com.br nslookup type=ns Consultando a página GET http://a.b.c/http/1.1 <enter> Host: a.b.c <enter> Connection: close <enter> 14