Desenvolvimento de Sistemas para WEB Exercícios de Revisão Prof. Msc. Jacson Rodrigues Questões 1. Explique o surgimento da Web e associe sua importância nos dias atuais. 2. Como é constituída uma página web? Explique como os navegadores de Internet obtém essas páginas utilizando o protocolo HTTP. 3. Execute o seguinte comando no GNU/Linux ou no Windows: telnet www.google.com 80 Em seu prompt, digite: GET / HTTP/1.1 HOST: www.google.com E pressione ENTER duas vezes (seja rápido para digitar essa parte). Para encerrar, pressione CTRL+] e depois CTRL+D Agora, responda: a) Essa página de resposta se refere a qual URL? b) Todos os componentes (imagens, estilos, scripts) dessa página de resposta estão presentes no código HTML recebido? Por quê? Se não estiverem, como obter os demais componentes? c) Como utilizar o protocolo HTTP 1.0 ao invés da versão 1.1? d) Qual a diferença na conexão se for utilizado o HTTP 1.0? Qual documento que referencia isso? e) Explique sobre a duração do tempo de resposta necessário para obter essa página. f) Ao realizar uma requisição de páginas como essa, quais são as principais mensagens e os principais códigos de resposta que podem ser obtidos? g) Explique e prove com o comando “netstat ­antp” quais portas foram utilizadas na comunicação com o servidor da google. Explique como essas portas foram utilizadas. 4. No Google Chrome, entre no seguinte endereço: chrome://settings/cookies#cookies Se for no Firefox, entre em “Ferramentas”→“Privacidade” e selecione “O Firefox deve: Usar minhas configurações”. Então, clique sobre o botão “Exibir Cookies”. Baseando-se no conteúdo de seu navegador, responda: a) Essas informações estão armazenadas no seu computador ou no site que você acessou? b) Como e para que essas informações são utilizadas? Desenvolvimento de Sistemas para Web 1/4 c) Como desenvolvedor, quais os perigos dessas informações? Explique como utilizar cookies de forma segura. 5. Sobre um servidor Web, responda: a) Qual linguagem de programação que o servidor pode ser implementado? Por quê? b) Qual a linguagem que o servidor deve responder às requisições dos usuários? Por quê? 6. Quais as diferenças do HTML5 quanto às HTMLs mais antigas? Qual é a sua estrutura básica? 7. Explique quatro tipos de novos elementos e atributos do HTML5. 8. Por que as páginas aparecem de forma diferente nos navegadores de Internet? 9. Qual é a relação do HTML ao acessar um site em php, ou jsp, ou qualquer outra linguagem de programação? 10. Explique o que são elementos de linha e elementos de bloco e o que eles interferem na confecção de uma página HTML? 11. É possível transformar um elemento de linha em um elemento de bloco? E o contrário? Se for possível, explique como. 12. O que é CSS3, JavaScript, jQuery e DOM? Quais suas relações com o HTML? 13. Utilizando CSS3, como você faria para: a) Definir a cor da fonte vermelha de todos os títulos 1 que possuem o estilo “vermelhao”? b) Definir como cinza o fundo das linhas de uma tabela da classe “linhas-coloridas”. Porém, uma alternando da outra? c) Definir o cursor de ponteiro ao passar o mouse sobre um div com nome “divPonteiro”? d) Definir como negrito o texto de um parágrafo que está dentro de um div com id “conteudo”? e) Definir a fonte Courier para todos labels, captions e parágrafos? 14. Como definir as configurações de estilo do exercício 13 utilizando JavaScript? 15. Explique como fazer as seguintes ações utilizando JavaScript e utilizando jQuery: a) Definir que ao passar o mouse sobre o parágrafo com id “souUmLink”, apareça um ponteiro. E que ao ser clicado, chame a função “exibirMensagem” que modifique o conteúdo do parágrafo para “Sou um parágrafo que se transformou em um link...” b) Mudar a cor de fundo da página logo após ela ser carregada. c) Utilizando DOM, alterar o texto do último botão da página. 16. Ao entrar em um site, o usuário viu que todas as palavras com acentos estão esquisitas, com caracteres que ele desconhece. Por que isso ocorreu e como deve-se corrigir isso? 17. O que difere variáveis globais e varáveis de escopo no código JavaScript? Desenvolvimento de Sistemas para Web 2/4 18. O que são eventos e como podem ser tratados? Dê três exemplos de suas utilizações. 19. Como adicionar um CSS e um JavaScript ao HTML? Cite todas as formas de fazer isso. 20. Qual é a diferença entre client-side e server-side? Quais linguagens funcionam em cada um dos dois lados? 21. Ao ter sobrescrita de estilos, dizemos que é por causa do efeito cascata do CSS. Explique isso. 22. Explique como a especificidade se aplica ao CSS. 23. O que são funções de Callback? Com jQuery, faça: a) Um site HTML com diversas imagens e um contador no topo da página com o número total de imagens (esse tópico pode ser feito sem o jQuery); b) Especifique que qualquer imagem, ao ser clicada, deve sumir lentamente. c) Quando a uma imagem qualquer acabar de desaparecer no site, uma função de callback deve ser chamada. Ela deve decrementar o valor do contador do topo da página. 24. Ao acessar um servidor, você verificou a página “usuario.php”. Sabendo disso, responda: a) Como ela foi processada para chegar ao seu navegador? b) Em que linguagem a página foi respondida ao seu navegador? c) É possível visualizar o código em PHP presente nessa página? Por quê? 25. Com formulários e PHP, a) Explique todos os passos necessários para enviar o nome de usuário e a senha ao servidor e obter a mensagem de autenticação. b) Crie um diagrama de transição de estados para explicar os passos do tópico “a”. c) Quais os métodos que podem ser utilizados no formulário e qual sua diferença? 26. O que são formulários? Quais os métodos de envio que eles suportam? 27. Como receber informações de formulários em um servidor? 28. Como instalar um servidor capaz de tratar páginas em PHP? 29. Quais os recursos que o PHP traz além do HTML? E do JavaScript? 30. Com PHP, faça: a) Conecte em um banco de dados. b) Crie uma tabela “alunos” e a popule com 5 matrículas e nomes de alunos. c) Selecione e exiba todos os alunos dessa tabela no HTML. 31. Faça a questão número 30 utilizando Ajax. 32. O que é XMLHTTPRequest? Desenvolvimento de Sistemas para Web 3/4 33. Como utilizar Ajax com jQuery? 34. O que o Ajax traz de inovação para as páginas na Web? 35. Como saber que uma requisição em Ajax não foi bem-sucedida? 36. O que é um XML e como utilizá-lo? 37. O que é um JSON e como utilizá-lo? 38. Com Ajax e PHP, faça páginas que: a) Retorne um XML e exiba uma lista na tela dos alunos cadastrados na questão 30. b) Retorne um JSON e exiba uma lista na tela dos alunos cadastrados na questão 30. 39. Com jQuery e Ajax, faça: a) Copie 5 histórias em 5 arquivos de texto diferentes e coloque-os no servidor (faça isso manualmente). b) Em um HTML com 5 imagens, faça: ao clicar sobre a imagem n, carrega a história n em um div centralizado na página, n=1,2,3,4,5. 40. Crie uma tabela no servidor com o nome “tabela_livros” e contendo as colunas: ID, titulo, autor e comentario. Do lado do cliente, utilizando jQuery, Ajax e JSON, faça um input. Ao digitar o nome do livro nesse input, o site deve pesquisar no BD do servidor e exibir os resultados abaixo do input. Dica, a pesquisa no servidor pode ser realizada com: SELECT * FROM tabela_livros WHERE titulo LIKE "%$VALOR%" OR autor LIKE "%$VALOR%" OR comentário LIKE "%$VALOR%"; Desenvolvimento de Sistemas para Web 4/4