Como a Web funciona

Como a Web funciona oferece uma visão simplificada do que acontece quando você vê uma página em um navegador no seu computador ou telefone.

Essa teoria não é essencial para escrever códigos em curto prazo, mas em pouco tempo você vai se beneficiar ao entender o que está acontecendo em segundo plano.

Clientes e servidores

Computadores conectados à Web são chamados clientes e servidores. Um diagrama simplificado de como eles interagem pode ter essa aparência:

  • Clientes são os dispositivos conectados a internet típicos do usuário da Web (por exemplo, seu computador conectado ao seu Wi-Fi ou seu telefone conectado à sua rede móvel) e programas de acesso à Web disponíveis nesses dispositivos (geralmente um navegador como Firefox ou Chrome).
  • Servidores são computadores que armazenam páginas, sites ou aplicativos. Quando o dispositivo de um cliente quer acessar uma página, uma cópia dela é baixada do servidor para à máquina do cliente para ser mostrada no navegador do usuário.

As outras partes da caixa de ferramentas

O cliente e o servidor que descrevemos acima não contam toda a história. Existem muitas outras partes envolvidas, e vamos descrevê-las abaixo.

Por enquanto, vamos imaginar que a web é uma estrada. Em um extremo da estrada, temos o cliente, que é como sua casa. No extremo oposto, temos o servidor, que é como uma loja onde você quer comprar algo.

Além do cliente e do servidor, também precisamos dizer oi para:

  • Sua conexão de Internet: Permite que você mande e receba dados na web. É basicamente como a rua entre sua casa e a loja.
  • TCP/IP: Protocolo de Controle de Transmissão e Protocolo de Internet (Transmission Control ProtocolInternet Protocol) são protocolos de comunicação que definem como os dados trafegam pela web. São como os mecanismos de transporte que te permitem ir ao shopping, fazer um pedido e comprar seus produtos. Em nosso exemplo, é como um carro ou uma bicicleta (ou qualquer outra coisa que você possa usar).
  • DNS: Servidor de Nome de Domínio (Domain Name Servers) são como um catálogo de endereços para sites. Quando você digita um endereço web no seu navegador, o navegador procura no servidor de DNS para localizar o endereço real do site, antes que ele possa recuperar o site. O navegador precisa encontrar em qual servidor web a página está hospedada, para que ele possa mandar mensagens HTTP para o lugar certo (veja abaixo). Isso é como pesquisar o endereço da loja para que você possa entrar em contato.
  • HTTP: Protocolo de Transferência de Hypertexto (Hypertext Transfer Protocol) é um protocolo de aplicação que define uma linguagem para clientes e servidores se comunicarem entre si. É como a linguagem que você usa para encomendar seus produtos.
  • Arquivos do componente: Um website é feito de muitos arquivos diferentes, que são como as diferentes partes dos produtos que você comprou na loja. Esses arquivos são divididos em dois tipos principais:
    • Arquivos de Código: Os sites são feitos principalmente de HTML, CSS e JavaScript, embora você possa conhecer outras tecnologias mais tarde.
    • Recursos: Esse é o nome coletivo para todas as outras coisas que compõem um site, como imagens, música, vídeos, documentos do Word e PDFs.

Então o que acontece, exatamente?

Quando você digita um endereço da web no seu navegador (pela nossa analogia é como ir andando até a loja):

  1. O navegador vai para o servidor de DNS e encontra o endereço verdadeiro onde o site está hospedado (você encontra o endereço da loja).
  2. O navegador manda uma mensagem de requisição HTTP para o servidor, pedindo que envie uma cópia do site ao cliente (você vai até a loja e pede suas mercadorias). Esta mensagem e todos os outros dados enviados entre o cliente e o servidor, são enviados pela sua conexão à internet usando TCP/IP.
  3. Se o servidor aprovar a requisição do cliente, o servidor enviará ao cliente uma mensagem "200 OK", que significa "Claro que você pode ver esse site! Aqui está" e então começa a enviar os arquivos do site para o navegador como uma série de pequenos pedaços chamados pacotes de dados (a loja dá-lhe os suas mercadorias e você as traz para sua casa).
  4. O navegador monta os pequenos pedaços em um site completo e te mostra (as mercadorias chegam à sua porta — novas coisas brilhantes e incríveis!).

DNS explicado

Endereços web verdadeiros não são sequências de textos boas e fáceis de lembrar que você digita na sua barra de endereços para encontrar seus sites favoritos. Eles são números especiais que se parecem com isso: 63.245.215.20.

Isso é chamado endereço IP e representa um local único na web. No entanto, não é muito fácil de lembrar, é? É por isso que o Servidor de Nome de Domínio foi inventado. Esses são servidores especiais que relacionam o endereço da web que você digita no seu navegador (como "mozilla.org") com o endereço real do site (IP).

Sites podem ser acessados diretamente pelo seu endereço IP. Você pode encontrar o endereço IP de um site, digitando seu domínio em uma ferramenta como o IP Checker.

Pacotes explicados

Anteriormente, usamos o termo "pacotes" para descrever o formato no qual os dados são enviados do servidor para o cliente. O que nós queremos dizer? Basicamente, quando os dados são enviados pela web, eles são enviados como milhares de pequenos blocos, para que muitos usuários diferentes possam baixar o mesmo site ao mesmo tempo. Se os site fosse enviado como um grande bloco, somente um usuário poderia baixar de cada vez, o que obviamente tornaria a web muito ineficiente e não muito divertida de usar.

Veja também

Créditos

Foto da rua: Street composing, por Kevin D.

Neste módulo