Upload
internet
View
113
Download
3
Embed Size (px)
Citation preview
Tecnologias para Tecnologias para InternetInternet
Thyago Maia Tavares de Thyago Maia Tavares de FariasFarias
Aula 1Aula 1
SumárioSumário Apresentação Plano de Ensino (resumo) Conceitos da Internet
Cliente Servidor URI
URN URL
Protocolos HTTP
Linguagens de ScriptingLinguagens de Scripting
ApresentaçãoApresentação
Professor: Thyago Maia Tavares de FariasProfessor: Thyago Maia Tavares de Farias
Mestre em Informática pelo PPGI/DI/UFPBMestre em Informática pelo PPGI/DI/UFPB Bacharel em Ciência da Computação pela Bacharel em Ciência da Computação pela
UFPBUFPB Currículo Lattes: Currículo Lattes:
http://lattes.thyagomaia.nethttp://lattes.thyagomaia.net E-Mail: [email protected]: [email protected] Twitter: http://twitter.com/thyagomaiaTwitter: http://twitter.com/thyagomaia
Plano de EnsinoPlano de Ensino
Ementa:Ementa: Arquitetura para aplicações WEB;Arquitetura para aplicações WEB; Apresentação de tecnologias para Apresentação de tecnologias para
desenvolvimento WEB;desenvolvimento WEB; Frameworks e ambiente para Frameworks e ambiente para
desenvolvimento WEB;desenvolvimento WEB; Persistência de informação na WEB;Persistência de informação na WEB; Tecnologias para dispositivos móveis;Tecnologias para dispositivos móveis; Segurança para aplicações e transações na Segurança para aplicações e transações na
WEB;WEB;
Plano de ensinoPlano de ensino
Bibliografia BásicaBibliografia Básica
KURNIAWAN, B. KURNIAWAN, B. Java para Web com Java para Web com Servlets, JSP e EJBServlets, JSP e EJB. Rio de Janeiro: Ciência . Rio de Janeiro: Ciência Moderna, 2002.Moderna, 2002.
ROCHA, C.A. da. ROCHA, C.A. da. Desenvolvendo Web Sites Desenvolvendo Web Sites dinâmicos: PHP, ASP, JSPdinâmicos: PHP, ASP, JSP. Rio de Janeiro: . Rio de Janeiro: Campus, 2003.Campus, 2003.
CHRISTIAN, A. M. CHRISTIAN, A. M. HTML 4.0 HTML 4.0 Fundamental: a base da programação Fundamental: a base da programação para WEBpara WEB. Érica, 2005.. Érica, 2005.
Plano de ensinoPlano de ensino Bibliografia complementarBibliografia complementar
TEMPLE, A.; MELLO, R.; CALEGARI, D.; SCHIEZARO, M. TEMPLE, A.; MELLO, R.; CALEGARI, D.; SCHIEZARO, M. JSP, Servlets e JSP, Servlets e J2EEJ2EE. Disponível em <www.inf.ufsc.br/~bosco/downloads/livro-jsp-. Disponível em <www.inf.ufsc.br/~bosco/downloads/livro-jsp-servlets-j2ee.pdf>. Acesso em 21 de Dezembro de 2010.servlets-j2ee.pdf>. Acesso em 21 de Dezembro de 2010.
SUN MICROSYSTEMS. SUN MICROSYSTEMS. The JavaEE 5 TutorialThe JavaEE 5 Tutorial. . Disponível em Disponível em <http://download.oracle.com/javaee/5/tutorial/doc/>. Acesso em 21 de <http://download.oracle.com/javaee/5/tutorial/doc/>. Acesso em 21 de Dezembro de 2010.Dezembro de 2010.
W3SCHOOLS.COM. W3SCHOOLS.COM. HTML TutorialHTML Tutorial. Disponível em . Disponível em <http://www.w3schools.com/html/default.asp>. Acesso em 21 de <http://www.w3schools.com/html/default.asp>. Acesso em 21 de Dezembro de 2010.Dezembro de 2010.
W3SCHOOLS.COM. W3SCHOOLS.COM. CSS IntroductionCSS Introduction. Disponível em . Disponível em <http://www.w3schools.com/css/css_intro.asp>. Acesso em 21 de <http://www.w3schools.com/css/css_intro.asp>. Acesso em 21 de Dezembro de 2010.Dezembro de 2010.
W3SCHOOLS.COM. W3SCHOOLS.COM. PHP IntroductionPHP Introduction. Disponível em . Disponível em <http://www.w3schools.com/php/php_intro.asp>. Acesso em 21 de <http://www.w3schools.com/php/php_intro.asp>. Acesso em 21 de Dezembro de 2010.Dezembro de 2010.
W3SCHOOLS.COM. W3SCHOOLS.COM. ASP IntroductionASP Introduction. Disponível em . Disponível em <http://www.w3schools.com/asp/asp_intro.asp>. Acesso em 21 de <http://www.w3schools.com/asp/asp_intro.asp>. Acesso em 21 de Dezembro de 2010.Dezembro de 2010.
W3SCHOOLS.COM. W3SCHOOLS.COM. XML IntroductionXML Introduction. Disponível em . Disponível em <http://www.w3schools.com/xml/xml_whatis.asp>. Acesso em 21 de <http://www.w3schools.com/xml/xml_whatis.asp>. Acesso em 21 de Dezembro de 2010.Dezembro de 2010.
Plano de EnsinoPlano de Ensino Avaliação:Avaliação:
3 avaliações:3 avaliações: 1º estágio: Data a definir – Notas de 0 a 101º estágio: Data a definir – Notas de 0 a 10 2º estágio: Data a definir – Notas de 0 a 102º estágio: Data a definir – Notas de 0 a 10 3º estágio: Data a definir – Notas de 0 a 73º estágio: Data a definir – Notas de 0 a 7
Projeto IntegradorProjeto Integrador Tema: Redes Sociais;Tema: Redes Sociais; Sub-tema: Desenvolvimento de Aplicativos para Redes Sub-tema: Desenvolvimento de Aplicativos para Redes
SociaisSociais Irá complementar a nota do 3º estágio – Notas de 0 a 3;Irá complementar a nota do 3º estágio – Notas de 0 a 3;
Reposição (apenas 1 estágio)Reposição (apenas 1 estágio) Data: A definirData: A definir
Final (todo o conteúdo)Final (todo o conteúdo) Data: A definirData: A definir
Plano de EnsinoPlano de Ensino
Projeto IntegradorProjeto Integrador Objetivo: Desenvolver uma aplicação integrada Objetivo: Desenvolver uma aplicação integrada
a uma rede social (Twitter, Facebook, etc.);a uma rede social (Twitter, Facebook, etc.); Fases do projeto:Fases do projeto:
1º estágio – Pesquisa (0,5 pontos): “Como integrar uma 1º estágio – Pesquisa (0,5 pontos): “Como integrar uma aplicação com uma rede social” ou “Como criar uma aplicação aplicação com uma rede social” ou “Como criar uma aplicação para uma rede social”? (rede social selecionada pelo grupo – para uma rede social”? (rede social selecionada pelo grupo – até 4 alunos)até 4 alunos)
1º estágio – Definição (0,5 pontos): O que o grupo irá 1º estágio – Definição (0,5 pontos): O que o grupo irá desenvolver? (levantamento de requisitos)desenvolver? (levantamento de requisitos)
2º estágio - Desenvolvimento da aplicação / Integração da 2º estágio - Desenvolvimento da aplicação / Integração da aplicação com uma rede social (1,0 ponto)aplicação com uma rede social (1,0 ponto)
3º estágio – Apresentação da aplicação (até 15 min.) no Fórum 3º estágio – Apresentação da aplicação (até 15 min.) no Fórum Integrador (Data a definir) (1,0 ponto); Integrador (Data a definir) (1,0 ponto);
Plano de EnsinoPlano de Ensino
Site da disciplina:Site da disciplina: http://ead.unipe.brhttp://ead.unipe.br
SlidesSlides Notas de AulaNotas de Aula ExercíciosExercícios Resultado de avaliaçõesResultado de avaliações Informações do cursoInformações do curso FerramentasFerramentas
Plano de ensinoPlano de ensino Site de suporte didático:Site de suporte didático:
http://www.w3schools.comhttp://www.w3schools.com Tutoriais gratuitos (em inglês)Tutoriais gratuitos (em inglês) Ferramentas de desenvolvimento (HTML-CSS)Ferramentas de desenvolvimento (HTML-CSS)
Softwares utilizados no curso:Softwares utilizados no curso: Apache2Triad Apache2Triad
(http://www.baixaki.com.br/download/apache2tria(http://www.baixaki.com.br/download/apache2triad.htm)d.htm)
Netbeans IDE Netbeans IDE (http://www.baixaki.com.br/download/netbeans-(http://www.baixaki.com.br/download/netbeans-ide.htm)ide.htm)
Notepad++ Notepad++ (http://www.baixaki.com.br/download/notepad-.ht(http://www.baixaki.com.br/download/notepad-.htm)m)
Conceitos da InternetConceitos da Internet
Alguns conceitos que serão Alguns conceitos que serão abordados durante o curso:abordados durante o curso:
ClienteCliente ServidorServidor URIURI Protocolo HTTPProtocolo HTTP Linguagens de scriptingLinguagens de scripting
ClienteCliente
Software usado para comunicar-se e Software usado para comunicar-se e trocar dados com o servidor, trocar dados com o servidor, normalmente em outro computador;normalmente em outro computador;
Exemplos:Exemplos: Navegadores (Browsers): IE, Firefox, Navegadores (Browsers): IE, Firefox,
Chrome...;Chrome...; Applets (pequenos programas Java);Applets (pequenos programas Java); Aplicações que acessam dados da WEB;Aplicações que acessam dados da WEB;
ServidorServidor Combinação Combinação
Software+HardwSoftware+Hardware que fornece are que fornece um ou mais um ou mais serviços de serviços de provimento de provimento de informações e informações e recursos recursos computacionais a computacionais a outros outros computadores computadores (clientes) ligados (clientes) ligados a uma rede;a uma rede;
Uniform Resource Uniform Resource IdentifierIdentifier
URIURI
Identificador Uniforme de Recursos;Identificador Uniforme de Recursos; Cadeia de caracteres compacta usada para Cadeia de caracteres compacta usada para
identificar ou denominar um recurso da identificar ou denominar um recurso da Internet;Internet;
Permite a interação com representações do Permite a interação com representações do recurso através de uma rede, usando recurso através de uma rede, usando protocolos específicos;protocolos específicos;
São identificadas em grupos, definindo uma São identificadas em grupos, definindo uma sintaxe específica e protocolos associados;sintaxe específica e protocolos associados;
Uniform Resource Uniform Resource IdentifierIdentifier
Tipos de recurso acessíveis através de Tipos de recurso acessíveis através de URIs:URIs: Páginas estáticas e dinâmicas:Páginas estáticas e dinâmicas:
Ex.: index.html, cadastro.jsp, institucional.php, etc.;Ex.: index.html, cadastro.jsp, institucional.php, etc.; Arquivos Multimídia:Arquivos Multimídia:
Ex.: song.mp3, imagem.jpg, animacao.swf, tec.;Ex.: song.mp3, imagem.jpg, animacao.swf, tec.; Documentos:Documentos:
Ex.: livro.pdf, planilha_gastos.xls, notas.doc, etc;Ex.: livro.pdf, planilha_gastos.xls, notas.doc, etc; Saídas de programas;Saídas de programas; Qualquer objeto disponível na Internet;Qualquer objeto disponível na Internet;
Uniform Resource Uniform Resource IdentifierIdentifier
Estrutura de um URI:Estrutura de um URI: Estruturada em 3 partes:Estruturada em 3 partes:
1ª parte: Descreve o protocolo de acesso de 1ª parte: Descreve o protocolo de acesso de recurso;recurso;
Ex.: Ex.: httphttp://www.thyagomaia.com/notas.pdf;://www.thyagomaia.com/notas.pdf; Ex.: Ex.: httpshttps://www.banco.com/acessar_conta.jsp;://www.banco.com/acessar_conta.jsp;
2ª parte: Identifica a máquina hospedeira;2ª parte: Identifica a máquina hospedeira; Ex.: http://Ex.: http://www.thyagomaia.comwww.thyagomaia.com/notas.pdf;/notas.pdf; Ex.: https://Ex.: https://www.banco.comwww.banco.com/acessar_conta.jsp;/acessar_conta.jsp;
3ª parte: Indica o recurso a ser acessado;3ª parte: Indica o recurso a ser acessado; Ex.: http://www.thyagomaia.com/Ex.: http://www.thyagomaia.com/notas.pdfnotas.pdf;; Ex.: https://www.banco.com/Ex.: https://www.banco.com/acessar_conta.jspacessar_conta.jsp;;
Uniform Resource Uniform Resource IdentifierIdentifier
Classificação das URIs:Classificação das URIs: Localizador (URL);Localizador (URL); Nome (URN);Nome (URN);
Uniform Resource NameUniform Resource Name
URNURN Nome Uniforme de Recursos;Nome Uniforme de Recursos; Ex.: Sistema ISBN para identificação de livros;Ex.: Sistema ISBN para identificação de livros;
““Romeu e Julieta”: ISBN 0-486-27557-4Romeu e Julieta”: ISBN 0-486-27557-4 URN do livro: URN do livro: urn:isbn:0-486-27557-4urn:isbn:0-486-27557-4
Ex.: Sistema ISAN para identificação de filmes;Ex.: Sistema ISAN para identificação de filmes; ““Homem-Aranha”: ISAN 0000-0000-9E59-0000-O-0000-Homem-Aranha”: ISAN 0000-0000-9E59-0000-O-0000-
0000-20000-2 URN do filme: URN do filme: urn:isan:0000-0000-9E59-0000-O-0000-urn:isan:0000-0000-9E59-0000-O-0000-
0000-20000-2 Identificadores persistentes que permitem a Identificadores persistentes que permitem a
separação estrita entre identificação (nome único) e separação estrita entre identificação (nome único) e localização (endereços URL);localização (endereços URL);
Uniform Resource Uniform Resource LocatorLocator
URLURL Localizador Uniforme de Recursos;Localizador Uniforme de Recursos; Identifica o endereço de um determinado Identifica o endereço de um determinado
recurso;recurso; Estrutura:Estrutura:
protocolo://maquina/caminho/recursoprotocolo://maquina/caminho/recurso Ex.: Ex.:
http://www.sportrecife.com.br/titulos/http://www.sportrecife.com.br/titulos/brasileiro87.pdfbrasileiro87.pdf
Identificador utilizado no curso;Identificador utilizado no curso;
ProtocolosProtocolos
Convenção ou padrão que controla e Convenção ou padrão que controla e possibilita uma conexão, comunicação possibilita uma conexão, comunicação ou transferência de dados entre dois ou transferência de dados entre dois sistemas operacionais;sistemas operacionais;
Exemplos de protocolos de Exemplos de protocolos de comunicação em rede:comunicação em rede: HTTP (Hypertext Transfer Protocol);HTTP (Hypertext Transfer Protocol); FTP (File Transfer Protocol);FTP (File Transfer Protocol); POP3 (Post Office Protocol);POP3 (Post Office Protocol);
Hypertext Transfer Hypertext Transfer ProtocolProtocol
O protocolo HTTPO protocolo HTTP
Protocolo de comunicação;Protocolo de comunicação; Conjunto de padrões e regras que Conjunto de padrões e regras que
definem e disciplinam determinadas definem e disciplinam determinadas trocas de informação;trocas de informação;
Protocolo mais comum para Protocolo mais comum para transferência de dados na Internet;transferência de dados na Internet;
Hypertext Transfer Hypertext Transfer ProtocolProtocol
Exemplo:Exemplo:
Usuário acessa um endereço URL no Usuário acessa um endereço URL no navegador;navegador;
Ex.: Ex.: http://www.sportrecife.com.br/tabelas/pe2011.pdfhttp://www.sportrecife.com.br/tabelas/pe2011.pdf
O navegador (cliente) envia uma requisição O navegador (cliente) envia uma requisição HTTP ao servidor, solicitando o acesso ao HTTP ao servidor, solicitando o acesso ao recurso (a tabela pe2011.pdf);recurso (a tabela pe2011.pdf);
O servidor responde a solicitação, enviando ao O servidor responde a solicitação, enviando ao cliente o recurso solicitado;cliente o recurso solicitado;
Hypertext Transfer Hypertext Transfer ProtocolProtocol
REQUISIÇÃO
RESPOSTA
Linguagens de ScriptingLinguagens de Scripting
São linguagens de programação;São linguagens de programação; Executados em programas e/ou a partir Executados em programas e/ou a partir
de outras linguagens de programação;de outras linguagens de programação; Estendem a funcionalidade ou controlam Estendem a funcionalidade ou controlam
uma aplicação;uma aplicação; Programas escritos em linguagens de Programas escritos em linguagens de
scripting são referidos por SCRIPTS;scripting são referidos por SCRIPTS; Ex.: JavaScript, PHP, ASP, ActionScript... Ex.: JavaScript, PHP, ASP, ActionScript...
Linguagens de ScriptingLinguagens de Scripting
São linguagens de programação São linguagens de programação interpretadasinterpretadas
Não são executadas diretamente no Não são executadas diretamente no sistema operacional ou processador;sistema operacional ou processador;
São executados por interpretadores, que São executados por interpretadores, que lêem um código-fonte e o converte em lêem um código-fonte e o converte em código executável;código executável;
Não passam pelo processo de compilação;Não passam pelo processo de compilação;