Desenvolvimento Web em C++: do básico ao deploy
Desenvolvimento Web em C++: do básico ao deploy
Resumo:
Ao contrário dos estereótipos, C++ não é apenas programação de sistemas e motores de jogos. O padrão moderno C++17/20, bibliotecas poderosas (Boost.Asio, Crow, Drogon, Pistache) e ferramentas de compilação maduras (CMake, Conan) tornam o C++ uma excelente escolha para serviços web de alta carga, gateways de API e microsserviços. Este livro é o primeiro guia prático completo em português que o levará desde a configuração do ambiente até o deploy em produção de uma aplicação web em C++.
Sobre o que é o livro
- Fundamentos de HTTP e programação de redes — arquitetura cliente-servidor, protocolos, sockets, I/O assíncrono com Boost.Asio.
- Frameworks e bibliotecas — visão geral e comparação de Crow, Drogon, Pistache, oatpp; escolha de acordo com sua necessidade.
- REST API e JSON — design de endpoints, serialização/desserialização com nlohmann/json e Boost.JSON.
- Bancos de dados — trabalho com PostgreSQL via libpqxx, SQLite via sqlite_orm, pools de conexão.
- WebSockets e tempo real — chats, notificações, streaming de dados.
- Segurança — proteção contra SQL injection, XSS, CORS, autenticação JWT em C++.
- Testes — testes unitários (Google Test), testes de integração, testes de carga com wrk.
- Compilação e CI/CD — CMake + Conan, conteinerização Docker, deploy em VPS, Kubernetes.
Para quem é este livro
O livro é voltado para desenvolvedores C++ com experiência de 1 ano ou mais que desejam expandir suas habilidades na área web. Você já conhece sintaxe, templates, STL e CMake — aqui aprenderá a aplicá-los para criar serviços web de nível de produção. O livro também será útil para desenvolvedores backend de outras linguagens (Java, Go, Python) que desejam aprender C++ para componentes de alta carga.
O que você aprenderá e será capaz de fazer após a leitura
- Projetar e implementar uma API RESTful do zero em C++.
- Configurar um servidor web assíncrono que processa milhares de requisições por segundo.
- Integrar PostgreSQL e Redis em sua aplicação.
- Implementar autenticação via JWT e OAuth2.
- Escrever testes e configurar compilação automática no GitHub Actions.
- Empacotar a aplicação em uma imagem Docker e implantar em um servidor remoto.
Cada capítulo contém exemplos práticos de código, prontos para compilar e executar. Todos os projetos estão disponíveis em um repositório no GitHub. Ao final do livro, você criará um microsserviço completo para gerenciamento de tarefas (Task Manager API) com suporte a WebSockets, cache e autorização.
Não tenha medo das dificuldades — o autor aborda sequencialmente todos os detalhes, desde a escolha de uma biblioteca HTTP até a otimização de desempenho e monitoramento. Este livro será seu guia confiável para o mundo do desenvolvimento web em C++.