Post on 08-Feb-2017
Tecnologias para Internet
Prof.º Thyago MaiaGestão da TI
Objetivos
Aula 1: Introdução
• Apresentar a disciplina• Apresentar o conceito de “Arquitetura
de Sistemas Web “• Demonstrar como a arquitetura de
sistemas Web estrutura a disciplina• Apresentar o modelo cliente-servidor • Apresentar os protocolo HTTP e FTP
2
Apresentação
Apresentação
• Professor: Thyago Maia Tavares de Farias
– Doutorando em Computação pelo Cin / UFPE– Mestre em Informática pelo PPGI / DI / UFPB– Bacharel em Ciência da Computação – UFPB– Currículo Lattes: http://lattes.thyagomaia.net– E-Mail: thyagomaia@gmail.com
4
Apresentação
• Foco da disciplina
– Apresentação de algumas das principais tecnologias utilizadas no desenvolvimento de sistemas para a Web.• Aulas teóricas e práticas em laboratório
5
Apresentação
• Avaliações (3 estágios):– 1º estágio:
• Prova convencional (escrita) (0 a 6 pontos);• Exercícios (0 a 4 pontos);
– 2º estágio:• Prova convencional (escrita) (0 a 6 pontos);• Exercícios (0 a 4 pontos);
– 3º estágio:• Prova convencional (escrita) (0 a 6 pontos);• Exercícios (0 a 4 pontos);
– Média Final: (Maior nota (1º ou 2º estágio) + Nota do 3º Estágio) / 2;
6
Apresentação
• Ausência em Provas, Final e Presença– Ausência em Provas:
• O aluno só poderá se ausentar em uma das duas primeiras atividades (1º ou 2º estágio);
• A presença será obrigatória na prova do 3º estágio;• Não há provas de reposição de estágio;
– Final:• Prova Convencional (0 a 10 pontos);• Todo o conteúdo do semestre;
– Presença• Limite de faltas: 15 horas (7 aulas);
7
Apresentação
• Unipê Virtual (Ferramenta de Educação a Distância)– Material da disciplina (Slides, notas de aula,
indicação de livros, etc.);– Divulgação e submissão das práticas em
laboratório (exercícios de fixação e de avaliação);– Ferramenta para comunicação oficial (avisos,
lembretes, divulgação de datas, divulgação de notas, etc.);
– http://academico.unipe.br8
Apresentação
• Sites auxiliares:
– http://facebook.com/profthyagomaia– http://twitter.com/thyagomaia– http://slideshare.net/thyagomaia
9
Apresentação
• Softwares que serão utilizados no curso:
–Notepad++–Xampp (a partir do 2º estágio);
10
Arquiteturas de Sistemas Web
Arquiteturas de Sistemas Web
• Criação de Camadas– Trata-se de uma quebra de sistemas de software;– Benefícios:
• Facilita a compreensão do software como um todo;• Compreensão única de partes de sistemas e como elas interagem
com as demais;• Permite a independência entre os serviços de software;
– Facilita a manutenção, substituição e integração de camadas;• Reduz o acoplamento entre diferentes partes de sistemas;• Permite a definição de padrões;• Pode-se compartilhar camadas entre software, serviços, etc.;
12
Arquiteturas de Sistemas Web
• As três camadas principais
13
Camada ResponsabilidadesApresentação Fornecimento de serviços;
Exibição de informações;Tratamento de solicitações do usuário;
Lógica O real propósito do sistema;Ponte entre as camadas de apresentação e dados;A camada “inteligente” do sistema;
Camada de Fonte e Gerenciamento de Dados
Comunicação com bancos de dados;Armazenamento de dados persistentes;
Arquiteturas de Sistemas Web
• As três principais camadas– Cada camada resolve e cuida de problemas
específicos;– Cada camada envolve um componente;– Cada componente é facilmente identificável;– As camadas podem ser implementadas em um ou
mais computadores/servidores;– A separação e o uso de camadas irá depender da
complexidade da aplicação em questão;
14
Arquiteturas de Sistemas Web
• As três camadas principais
15
Arquiteturas de Sistemas Web
• Exercício: Faça a correspondência entre as tecnologias Web abaixo e em quais camadas elas atuam :1. SQL Server2. CSS3. JSP( ) Camada de Apresentação( ) Camada Lógica( ) Camada de Gerenciamento de Dados
16
Arquiteturas de Sistemas Web
• Exercício: Faça a correspondência entre as tecnologias Web abaixo e em quais camadas elas atuam :1. SQL Server2. CSS3. JSP(2) Camada de Apresentação(3) Camada Lógica(1) Camada de Gerenciamento de Dados
17
Arquitetura de Sistemas Web
• Exercício: Faça a correspondência entre as tecnologias Web abaixo e em quais camadas elas atuam :1. PHP2. MySQL3. HTML( ) Camada de Apresentação( ) Camada Lógica( ) Camada de Gerenciamento de Dados
18
Arquitetura de Sistemas Web
• Exercício: Faça a correspondência entre as tecnologias Web abaixo e em quais camadas elas atuam :1. PHP2. MySQL3. HTML(3) Camada de Apresentação(1) Camada Lógica(2) Camada de Gerenciamento de Dados
19
Arquiteturas de Sistemas Web
• Tecnologias (por camada) que serão abordadas no curso
20
Camada TecnologiasApresentação HTML
CSS
Lógica PHP
Camada de Fonte e Gerenciamento de Dados
MySQL
Arquiteturas de Sistemas Web
• Escolhendo onde rodar camadas de software
– As camadas podem ser implementadas em:• Clientes;• Servidores;
21
Arquitetura de Sistemas Web
• Cliente– Representa uma entidade (hardware, software) que
consome os serviços de outra entidade servidora, em geral através do uso de uma rede de computadores;
• Servidor– Sistema de computação centralizada que fornece serviços
para clientes em uma rede de computadores;– Exemplos de serviços: arquivos, e-mail, software, etc.;
22
Arquitetura de Sistemas Web
23
Protocolos
Protocolos
• Protocolo– Convenção ou padrão;– Controla e possibilita uma conexão, comunicação ou
transferência de dados entre dois sistemas operacionais;– Exemplos de protocolo:
• HTTP (Hypertext Transfer Protocol) – Protocolo de transferência de hipertexto;
• FTP (File Transfer Protocol) – Protocolo de transferência de arquivos;
• POP (Post Office Protocol) – Protocolo de acesso remoto a uma caixa de e-mail;
25
Protocolos
• Exemplo: O protocolo HTTP– Hypertext Transfer Protocol– Trata-se de um protocolo de comunicação;– Conjunto de padrões e regras que definem e
disciplinam determinadas trocas de informação;– O protocolo mais comum na Internet;– Responsável pelo tratamento de pedidos e
respostas entre clientes e servidores na World Wide Web (www);
26
REQUISIÇÃO
RESPOSTA
Protocolos
• O protocolo HTTP
27
Protocolos
• Exemplo: O protocolo FTP– File Transfer Protocol– Define a forma como os dados devem ser
transferidos em uma rede TCP/IP;
28
Explore o assunto!
Explore o assunto!
• Referências
– Padrões de Arquitetura de Aplicações Corporativas (FOWLER, M.): Introdução e Capítulo 1
30