25
Tecnologias para Tecnologias para Internet Internet Thyago Maia Tavares de Thyago Maia Tavares de Farias Farias Aula 1 Aula 1

Tecnologias para Internet - Aula 1

Embed Size (px)

DESCRIPTION

Slides utilizados na 1ª aula da disciplina de Tecnologias para Internet, realizada no dia 01/08/2011

Citation preview

Page 1: Tecnologias para Internet - Aula 1

Tecnologias para Tecnologias para InternetInternet

Thyago Maia Tavares de Thyago Maia Tavares de FariasFarias

Aula 1Aula 1

Page 2: Tecnologias para Internet - Aula 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

Page 3: Tecnologias para Internet - Aula 1

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

Page 4: Tecnologias para Internet - Aula 1

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;

Page 5: Tecnologias para Internet - Aula 1

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.

Page 6: Tecnologias para Internet - Aula 1

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.

Page 7: Tecnologias para Internet - Aula 1

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

Page 8: Tecnologias para Internet - Aula 1

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);

Page 9: Tecnologias para Internet - Aula 1

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

Page 10: Tecnologias para Internet - Aula 1

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)

Page 11: Tecnologias para Internet - Aula 1

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

Page 12: Tecnologias para Internet - Aula 1

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;

Page 13: Tecnologias para Internet - Aula 1

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;

Page 14: Tecnologias para Internet - Aula 1

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;

Page 15: Tecnologias para Internet - Aula 1

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;

Page 16: Tecnologias para Internet - Aula 1

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;;

Page 17: Tecnologias para Internet - Aula 1

Uniform Resource Uniform Resource IdentifierIdentifier

Classificação das URIs:Classificação das URIs: Localizador (URL);Localizador (URL); Nome (URN);Nome (URN);

Page 18: Tecnologias para Internet - Aula 1

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);

Page 19: Tecnologias para Internet - Aula 1

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;

Page 20: Tecnologias para Internet - Aula 1

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);

Page 21: Tecnologias para Internet - Aula 1

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;

Page 22: Tecnologias para Internet - Aula 1

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;

Page 23: Tecnologias para Internet - Aula 1

Hypertext Transfer Hypertext Transfer ProtocolProtocol

REQUISIÇÃO

RESPOSTA

Page 24: Tecnologias para Internet - Aula 1

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...

Page 25: Tecnologias para Internet - Aula 1

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;