Jump to ratings and reviews
Rate this book

Software Architecture with C++: Designing robust C++ systems with modern architectural practices

Rate this book
Architect high-quality C++ applications using modern features and patterns, with expanded coverage and practical new examples throughout the book.



Free with your DRM-free PDF version + access to Packt's next-gen Reader*

Key FeaturesDesign modern C++ systems using features from C++11 through C++20 and beyondExplore distributed system design with observability, scalability, and maintainability in mindManage and package C++ applications, and prepare them for deployment using CMake, Conan, and CI/CDBook DescriptionDesigning 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.

*Email sign-up and proof of purchase required

What you will learnApply architectural fundamentals to design scalable C++ systemsUse modern C++ features to create maintainable and secure applicationsImplement architectural and system design patternsDesign testable code and automate quality checks via CI/CD pipelinesManage dependencies and build systems using CMake and ConanExplore microservices, containers, and cloud-native practices in C++Improve observability with logging, tracing, and monitoring toolsBuild deployable C++ systems suited for modern development environmentsWho this book is forThis book is intended for experienced C++ developers and software engineers aiming to expand their architectural knowledge, lead software projects, or build scalable systems. It assumes readers are comfortable with modern C++ (C++11 onwards) and familiar with basic design principles and patterns.

Table of ContentsImportance of Software Architecture and Principles of Great DesignArchitectural StylesFunctional and Nonfunctional RequirementsArchitectural and System Design PatternsLeveraging C++ Language FeaturesDesign Patterns and C++ IdiomsBuilding and PackagingPackage ManagementThe Future of C++ Code Using ModulesWriting Testable CodeContinuous Integration and Continuous DeploymentSecurity in Code and DeploymentPerformance

1277 pages, Kindle Edition

Published December 23, 2025

Loading...
Loading...

About the author

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
0 (0%)
4 stars
0 (0%)
3 stars
0 (0%)
2 stars
0 (0%)
1 star
0 (0%)
No one has reviewed this book yet.