Introdução à Web
A Web representa o maior sistema distribuído já concebido pela humanidade. Desde sua concepção inicial como um meio para compartilhar documentos científicos, ela evoluiu para sustentar redes sociais, comércio eletrônico, sistemas industriais e experiências imersivas. Este capítulo explora sua arquitetura, os marcos históricos e as competências essenciais para aqueles que almejam atuar como desenvolvedores backend.
1. Origem e Arquitetura da Web
Seção intitulada “1. Origem e Arquitetura da Web”1.1 Contexto Histórico
Seção intitulada “1.1 Contexto Histórico”Entre 1989 e 1991, no CERN (Organização Europeia para a Pesquisa Nuclear), localizado na Suíça, Tim Berners-Lee idealizou um método simples para conectar e compartilhar documentos entre computadores e pesquisadores. Inspirado por conceitos como o MEMEX, de Vannevar Bush, sua proposta enfatizava a simplicidade na publicação, a universalidade no acesso e a navegação por meio de hipertexto.
1.2 Os Cinco Pilares Fundamentais
Seção intitulada “1.2 Os Cinco Pilares Fundamentais”A equipe do CERN estabeleceu cinco tecnologias fundamentais que ainda hoje sustentam a Web:
- Servidor de Hipertexto: Software responsável por entregar documentos através da rede.
- Cliente/Navegador: Programa utilizado para acessar, renderizar e navegar entre documentos.
- HTML (HyperText Markup Language): Linguagem para estruturar o conteúdo das páginas.
- URI (Uniform Resource Identifier): Esquema para identificar e localizar recursos.
- HTTP (HyperText Transfer Protocol): Protocolo para transferência de documentos.
Esses elementos formam a base da arquitetura da Web, na qual navegadores solicitam recursos identificados por URIs, servidores respondem via HTTP, e o HTML organiza o conteúdo exibido.
2. Evolução da Web
Seção intitulada “2. Evolução da Web”A evolução da Web reflete décadas de avanços tecnológicos, transformações culturais e mudanças nos modelos de negócios. A seguir, são apresentados os principais períodos dessa trajetória.
2.1 Web 1.0 (1989–2005)
Seção intitulada “2.1 Web 1.0 (1989–2005)”A Web 1.0 foi caracterizada pela publicação e leitura de conteúdo estático, com pouca interatividade. A navegação era realizada por meio de diretórios e links, e o HTML desempenhava um papel central. Exemplos típicos incluem sites institucionais e portais informativos.
Competências Relevantes:
- Conhecimento básico de HTML e HTTP.
- Habilidades em hospedagem simples e estruturação de conteúdo.
2.2 Web 2.0
Seção intitulada “2.2 Web 2.0”Popularizado por Dale Dougherty, o termo “Web 2.0” descreve uma era marcada pelo conteúdo gerado por usuários, plataformas sociais e experiências interativas. Tecnologias como Ajax e APIs possibilitaram maior dinamismo, enquanto os modelos de negócio passaram a se concentrar em comunidades.
Competências Relevantes:
- Desenvolvimento com JavaScript no cliente e consumo de APIs REST.
- Implementação de autenticação, gerenciamento de sessões e design de interação.
2.3 Web 3.0
Seção intitulada “2.3 Web 3.0”A Web 3.0, também conhecida como “Web Semântica”, introduziu a padronização de dados e a interoperabilidade entre sistemas. Essa fase destacou a separação em camadas (dados, serviços e apresentação) e a expansão para dispositivos móveis e embarcados.
Competências Relevantes:
- Modelagem de dados e uso de formatos interoperáveis como JSON e RDF.
- Criação de APIs bem definidas e integração entre serviços distribuídos.
2.4 Web 4.0
Seção intitulada “2.4 Web 4.0”A Web 4.0 é caracterizada pela computação ubíqua e pela Internet das Coisas (IoT). Dispositivos conectados, sensores e automação desempenham papéis centrais, enquanto Big Data e Inteligência Artificial possibilitam experiências contínuas entre múltiplos dispositivos.
Competências Relevantes:
- Implementação de mensageria, streaming de dados e processamento em tempo real.
- Garantia de segurança em dispositivos e redes distribuídas.
2.5 Web 5.0 (Visões e Projeções)
Seção intitulada “2.5 Web 5.0 (Visões e Projeções)”A Web 5.0 explora a interação emocional, integrando neurociência e inteligência artificial. Sistemas dessa geração são projetados para reconhecer e responder a estados afetivos, promovendo experiências mais humanas e contextuais.
Competências Relevantes:
- Processamento de sinais e multimodalidade.
- Considerações éticas em IA, privacidade e consentimento.
3. Competências para Backend
Seção intitulada “3. Competências para Backend”O desenvolvimento backend exige um conjunto abrangente de conhecimentos técnicos e práticas de engenharia, fundamentais para a criação de aplicações robustas, escaláveis e seguras.
3.1 Nível Iniciante
Seção intitulada “3.1 Nível Iniciante”No nível inicial, o foco está nos fundamentos da Web, como HTTP, DNS e URI, além do domínio de uma linguagem de programação para servidores (ex.: Java, Python, Node.js). Outras habilidades incluem controle de versão com Git, modelagem de bancos relacionais e criação de APIs REST.
3.2 Nível Intermediário
Seção intitulada “3.2 Nível Intermediário”O nível intermediário abrange caching, autenticação, criptografia, testes de software, CI/CD e conteinerização. Também inclui o uso de bancos não relacionais e estratégias para projetar APIs seguras e performáticas.
3.3 Nível Avançado
Seção intitulada “3.3 Nível Avançado”No nível avançado, o foco está em padrões de arquitetura, princípios de design, escalonamento, mensageria e observabilidade. O objetivo é projetar sistemas distribuídos resilientes e operar com confiabilidade em produção.
4. Ética, Padrões e Sustentabilidade
Seção intitulada “4. Ética, Padrões e Sustentabilidade”Ao desenvolver para a Web, é essencial considerar:
- Privacidade e Segurança: Proteção de dados pessoais.
- Padrões Abertos: Garantia de interoperabilidade e manutenção.
- Acessibilidade: Inclusão de todos os usuários.
- Sustentabilidade: Eficiência energética e redução de custos.
- Responsabilidade Social: Avaliação do impacto de algoritmos e conteúdo.
Referências
Seção intitulada “Referências”- Berners-Lee, T., & Fischetti, M. (2000). Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web by Its Inventor. Harper San Francisco.
- Bush, V. (1945). As We May Think. The Atlantic Monthly.
- Dougherty, D. (2004). What is Web 2.0?. O’Reilly Media.
- W3C. (n.d.). World Wide Web Consortium Standards. Disponível em: https://www.w3.org/
- Backend Roadmap. (n.d.). Developer Roadmaps. Disponível em: https://roadmap.sh/backend