3. Apresentação
▪ Professor: Thyago MaiaTavares 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
3
4. Apresentação
▪ Foco da disciplina
– Apresentação de algumas das principais tecnologias
utilizadas no desenvolvimento de sistemas para aWeb.
▪ Aulas teóricas e práticas em laboratório
4
5. Apresentação
▪ Avaliações:
– 1ª avaliação:
▪ Prova convencional (escrita);
▪ Práticas em Laboratório;
▪ Notas de 0 a 5;
– 2ª avaliação:
▪ Prova convencional (escrita);
▪ Práticas em Laboratório;
▪ Notas de 0 a 5;
– Nota Final: Nota da 1ª avaliação + Nota da 2ª avaliação;
5
CONTEÚDO
A1
CONTEÚDO
A1 + A2
7. Apresentação
▪ O aluno será considerado aprovado se
obtiver nota final igual ou maior que 6,0 e
frequência igual ou superior a 75% nas
atividades acadêmicas;
▪ O discente que não obtiver nota final igual
ou superior a seis (6,0), submeter-se-á a
avaliação final (AF).
▪ A nota obtida na avaliação final substituirá a
menor nota de A1 ou A2.
7
A1 – 4,0
A2 – 1,0
AF PARA A2
2,0
AF – 6,0
8. Apresentação
▪ Caso a AF seja menor do que a nota a ser substituída (A1 ouA2), mantem-
se a maior nota. Exemplo:
8
A1 – 4,0
A2 – 1,0
AF PARA A2
0,0
AF – 4,0
A1 – 4,0
A2 – 1,0
AF PARA A2
0,0
AF – 5,0
AF = 1,0
A1 – 4,0
A2 – 2,0
AF PARA A2
2,0
AF – 6,0
AF = 2,0
9. Apresentação
▪ Findo o prazo de registro de notas e faltas no Sistema Acadêmico, às
avaliações escritas serão disponibilizadas aos alunos.
9
Avaliações
serão
devolvidas
aos alunos.
Após
encerras os
prazos de
registro.
Encerramento do
Semestre
05/07/2019 (V)
19/07/2019 (I)
10. 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://virtual.unipe.br
10
15. 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.;
15
16. Arquiteturas de Sistemas Web
▪ As três camadas principais
16
Camada Responsabilidades
Apresentaçã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;
17. 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;
17
19. Arquiteturas de Sistemas Web
▪ Exercício: Faça a correspondência entre as
tecnologiasWeb abaixo e em quais camadas elas
atuam :
1. SQL Server
2. CSS
3. JSP
( ) Camada de Apresentação
( ) Camada Lógica
( ) Camada de Gerenciamento de Dados
19
20. Arquiteturas de Sistemas Web
▪ Exercício: Faça a correspondência entre as
tecnologiasWeb abaixo e em quais camadas elas
atuam :
1. SQL Server
2. CSS
3. JSP
(2) Camada de Apresentação
(3) Camada Lógica
(1) Camada de Gerenciamento de Dados
20
21. Arquitetura de Sistemas Web
▪ Exercício: Faça a correspondência entre as
tecnologiasWeb abaixo e em quais camadas elas
atuam :
1. PHP
2. MySQL
3. HTML
( ) Camada de Apresentação
( ) Camada Lógica
( ) Camada de Gerenciamento de Dados
21
22. Arquitetura de Sistemas Web
▪ Exercício: Faça a correspondência entre as
tecnologiasWeb abaixo e em quais camadas elas
atuam :
1. PHP
2. MySQL
3. HTML
(3) Camada de Apresentação
(1) Camada Lógica
(2) Camada de Gerenciamento de Dados
22
23. Arquiteturas de Sistemas Web
▪ Tecnologias (por camada) que serão abordadas no curso
23
Camada Tecnologias
Apresentação HTML
JavaScript
CSS
Lógica PHP
Camada de Fonte e
Gerenciamento de Dados
MySQL
24. Arquiteturas de Sistemas Web
▪ Escolhendo onde rodar camadas de software
–As camadas podem ser implementadas em:
▪ Clientes;
▪ Servidores;
24
25. 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.;
25
28. Protocolos
▪ 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 (HypertextTransfer Protocol) – Protocolo de
transferência de hipertexto;
– FTP (FileTransfer Protocol) – Protocolo de transferência de
arquivos;
– POP (Post Office Protocol) – Protocolo de acesso remoto a
uma caixa de e-mail;
28
29. Protocolos
▪ Exemplo: O protocolo HTTP
– HypertextTransfer 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 naWorld WideWeb (www);
29
35. PHP
PHP é um acrônimo para PHP: Hypertext Preprocessor;
Trata-se de uma linguagem script livre;
Muito utilizada para gerar conteúdo dinâmico naWeb;
Scripts PHP são executados em servidores;
PHP dá suporte a vários servidores de bancos de dados
(MySQL, Oracle, PostgreSQL, etc.);
35
36. PHP
É livre para ser baixado e usado;
Linguagem portável:Versões para vários sistemas operacionais;
Pode ser mesclada com HTML;
Pode gerar páginas HTML;
Sintaxe similar a linguagens como C e Java;
Permite o desenvolvimento de páginas que serão geradas
dinamicamente;
36
38. PHP: O que eu preciso?
O servidor que dará suporte a PHP (local ou remoto)
deverá possuir os seguintes softwares:
– Um servidor HTTP;
– O PHP;
– Um SGBD (Opcional);
38
39. PHP: O que eu preciso?
Um servidor HTTP (ou servidorWeb)
– Programa responsável por aceitar requisições HTTP de clientes,
geralmente navegadores, e servi-los com respostas HTTP;
– Servidor HTTP padrão para scripts PHP: Apache Server
– Software colaborativo (livre), portável e pouco exigente com
recursos de Hardware;
– Gerenciado por um grupo mundial de voluntários;
– A fundaçãoApache Software Foundation provê o suporte
financeiro, legal e organizacional para o Apache;
39
40. PHP: O que eu preciso?
O interpretador PHP
– O PHP precisa estar instalado em um servidor para que
o mesmo reconheça a linguagem;
40
41. PHP: O que eu preciso?
Um SGBD - Sistema de Gerenciamento de Banco de Dados
(Opcional).
– Necessário para sites e aplicações Web que submetam, inserem e
selecionam dados em bases de dados;
– SGBD difundido para uso agregado com PHP: MySQL Server
– Utiliza a linguagem SQL como interface;
– Software Livre
– Portável e pouco exigente com recursos de Hardware;
– Onde obter o MySQL Server?
41
42. PHP: O que eu preciso?
Existem pacotes de instalação disponíveis para a
instalação de um servidor PHP completo (Apache + PHP +
MySQL)
– Resumem a preparação de um servidor;
– Fácil configuração (alguns são automáticos);
– Ideal para servidores locais;
42
43. PHP: O que eu preciso?
▪ Alguns pacotes populares:
• XAMPP;
• WAMP5;
43