Web Development in C++: From Basics to Deployment
300 pages
English
PDF
4.5

Web Development in C++: From Basics to Deployment

Web Development in C++: From Basics to Deployment

Author:

Year:

Summary:

The book "Web Development in C++: From Basics to Deployment" is a comprehensive guide for those who want to harness the power and performance of C++ to build modern web applications. Unlike typical textbooks that focus on syntax, this book sequentially guides the reader from basic concepts of network programming to the full deployment cycle of a finished product.



What the book is about

The book covers all key stages of developing a web server in C++:

  • Fundamentals of network interaction: working with sockets, HTTP/1.1 and HTTP/2 protocols, parsing requests and forming responses.
  • Frameworks and libraries: practical use of Boost.Asio for asynchronous I/O, as well as lightweight frameworks Crow and Drogon for quickly creating REST APIs.
  • Application architecture: designing modular systems, working with middleware, sessions, authentication, and authorization.
  • Working with data: integration with databases (PostgreSQL via libpqxx, Redis via hiredis), creating ORM-like layers.
  • Templating: server-side HTML generation using the inja and mustache libraries.
  • Security and optimization: protection against common attacks (SQL injection, XSS), memory management, profiling, and benchmarking.
  • Deployment and DevOps: building with CMake, containerization in Docker, setting up CI/CD, working with Nginx as a reverse proxy, application monitoring.


Who this book is for

The publication is aimed at backend developers who are already familiar with the basics of C++ (classes, templates, STL) and want to expand their skills towards web development. The book will also be useful for engineers working with high-load systems where C++ performance provides a critical advantage over interpreted languages.



What the reader will learn

By mastering the book's material, you will be able to:

  • Design and write your own HTTP server from scratch or based on ready-made libraries.
  • Create RESTful and GraphQL APIs with high throughput.
  • Integrate C++ services into an existing infrastructure (microservices, communication via gRPC).
  • Configure project builds for different platforms and operating systems.
  • Automate testing, building, and deployment using Docker and CI systems.
  • Optimize memory and CPU consumption for operation under high load.


All code examples are available in the GitHub repository and are accompanied by step-by-step instructions. The book is written by a practitioner who has gone from a simple "Hello World" to production solutions handling millions of requests.



"Web Development in C++" is not just a textbook, but a desktop guide you will return to when creating each new web service in C++.

Recommendations