Software Architecture with C++, Second Edition: Designing robust C++ systems with modern architectural practices
Andrey Gavrilin, Adrian Ostrowski, Piotr Gaczkowski
Architect high-quality C++ applications using modern features and patterns, with expanded coverage and practical new examples throughout the book.
Key Features
– Design modern C++ systems using features from C++11 through C++20 and beyond
– Explore distributed system design with observability, scalability, and maintainability in mind
– Manage and package C++ applications, and prepare them for deployment using CMake, Conan, and CI/CD
Book Description
Designing scalable and maintainable software with C++ requires more than language expertise—it demands strong architectural thinking. This practical guide equips you with the skills to design and build robust, distributed systems using modern C++.
Starting with fundamental architectural principles and design philosophies, the book walks you through practical approaches to designing and deploying reliable systems. This edition contains significant updates across the book, including new chapters on observability, package management, and C++ modules to address real-world software challenges. You will explore software decomposition strategies, design and system patterns, fault tolerance, API management, and testability—all applied with C++.
Additionally, the book covers modern CI/CD pipelines, cloud-native design, microservices, and modular development, helping developers navigate today’s fast-evolving software landscape. With updated examples and a renewed emphasis on maintainable and observable architectures, this edition equips C++ professionals to architect modern systems. By the end of this book, you will be able to design, build, test, and deploy well-architected solutions using modern C++ and proven architectural techniques.
What you will learn
– Apply architectural fundamentals to design scalable C++ systems
– Use modern C++ features to create maintainable and secure applications
– Implement architectural and system design patterns
– Design testable code and automate quality














There are no reviews yet.