Como a Web funciona dá uma visão simplificada do que acontece quando você vê uma página em um browser no seu computador ou telefone.
Essa teoria não é essencial para escrever códigos em curto prazo, mas você vai se beneficiar ao entender o que acontece por debaixo dos panos.
Clientes e servidores
Computadores conectados à Web são chamados clients e servidores. Um diagrama simplificado de como eles interagem parece algo do tipo:
- Clientes são os usuários típicos da Web conectados à Internet (por exemplo, seu computador conectado ao seu Wifi, ou seu smartphone conectado à sua rede móvel) e programas de acesso à Web disponíveis nesses aparelhos (geralmente um browser como Firefox ou Chrome).
- Servidores são computadores que guardam páginas ou aplicativos. Quando o dispositivo de um cliente quer acessar uma página, uma cópia dela é baixada do servidor à máquina do cliente para ser mostrada no browser.
As outras partes da caixa de ferramentas
O cliente e o servidor que descrevemos 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 outro extremo, temos o servidor, que é como uma loja onde você quer comprar algo.
Além do cliente e do servidor, nós precisamos dizer oi para:
- Sua conexão de Internet: Permite que você mande e receba dados da Web. É basicamente como a rua entre sua casa e a loja.
- TCP/IP: Transmission Control Protocol e Internet Protocol são protocolos de comunicação que definem como os dados viajam pela Web. Isso é como os mecanismos de transporte que te permitem ir ao shopping, fazer um pedido e comprar. Você pode andar e comprar o que você quer, mas nesse caso vamos imaginar que você ligue para a loja, pague seu pedido pelo telefone e espere pela entrega.
- DNS: Domain Name Servers são como listas de endereços para sites. Quando você digita um endereço web no seu browser, seu browser procura no DNS antes de entregar o site. O browser precisa encontrar em qual servidor o website vive, para que ele mande mensagens HTTP para o lugar certo (veja abaixo). Isso é como procurar o endereço e o telefone da loja para que você possa entrar em contato.
- HTTP: Hypertext Transfer Protocol é um protocolo de aplicação que define uma linguagem para clientes e servidores conversarem entre si. É como a linguagem que você usa para fazer seu pedido e falar com a pessoa que está entregando seu pedido.
- Arquivos do componente: Um website é feito de muitos arquivos diferentes, que são diferentes partes daquilo que você comprou na loja. Esses arquivos são divididos em dois tipos principais:
- Arquivos de Código: Websites são feitos primariamente de HTML, CSS e JavaScript, mas você vai encontrar outras tecnologias depois.
- Assets: Esse é o nome coletivo para todas as outras coisas que compõem um website, como imagens, música, vídeo, documentos do Word e PDFs.
Então o que acontece, exatamente?
Quando você digita um endereço web no seu browser (pela nossa analogia é como pedir um produto na loja):
- O browser vai para o servidor DNS e encontra o verdadeiro endereço onde o site vive (você encontra os detalhes de contato da loja).
- O browser manda uma mensagem de requerimento HTTP para o servidor pedindo para enviar a cópia do site ao cliente (você liga para a loja e faz seu pedido). Essa mensagem, e todos os outros dados enviados entre o cliente e o servidor, é enviada pela conexão de internet usando TCP/IP.
- A partir do momento que o servidor aprova o pedido do cliente, o servidor manda ao cliente a 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 browser como uma série de pequenos pedaços chamados pacotes de dados (a loja envia seu pedido).
- O browser monta os pequenos pedaços em um site completo e te mostra (o pedido chega na sua porta — coisas novas, fantástico!).
DNS explicado
Endereços de internet reais não são legais, memoráveis textos que você digita na sua barra de endereços para achar seus sites favoritos. Eles são conjuntos de números, como esses: 63.245.217.105.
Isso é chamado um endereço IP, e representa um local único na Web. No entanto, não é fácil de lembrar, é? É por isso que o Domain Name Service foi inventado. Esses são servidores especiais para relacionar um endereço web digitado no browser (como "mozilla.org") para o endereço real do website (IP).
Websites podem ser alcançados diretamente pelo seu endereçode IP. Tente acessar o site do Mozilla digitando 63.245.217.105
na barra de endereços em uma nova tab do browser.
Pacotes?
Anteriormente nós usamos o termo "pacotes" para descrever o formato que os dados são enviados de servidor para o cliente. O que nós queremos dizer? Basicamente, quando dados são enviados pela Web, são enviados milhares de pequenos pedaços, para que muitos usuários possam baixar o mesmo site ao mesmo tempo. Se os site são enviados em pedaços grandes, somente um usuário poderia baixar de cada vez, o que obviamente poderia fazer da Web um meio ineficiente e não muito divertido de se usar.
Veja também
Créditos
Foto da rua: Street composing, por Kevin D.