Design C++ APIs That Age Well
API Design for C++ takes a practical, long-view approach to one of software development’s most overlooked specialties: building interfaces that other developers can actually live with. Rather than treating API design as a handful of coding tricks, this second edition walks through the full lifecycle of an API — from early design choices and implementation details to testing, documentation, versioning, maintenance, and deprecation.
Martin Reddy focuses on the decisions that separate a merely functional interface from one that stays usable over time. The discussion connects design principles with real engineering concerns such as compatibility, performance, concurrency, extensibility, and the realities of evolving C++ codebases.
What This Edition Covers
- Core API design qualities such as clarity, completeness, and low coupling
- Common design patterns and API styles, from flat C interfaces to object-oriented, template-based, functional, and data-driven approaches
- C++ language features and revisions through C++23
- Performance, versioning, documentation, and testing strategies for long-lived APIs
- Interoperability topics including Objective-C++, Swift, scripting, and plug-in extensibility
Built for Real-World Software Teams
This is a strong fit for software engineers, C++ developers, and computer science readers who build libraries, frameworks, device-facing code, or other reusable components. It is especially relevant when API decisions have to support many users, multiple versions, or a long maintenance horizon.
If you want a book that treats API design as an engineering discipline rather than a style preference, this edition offers a clear, structured, and highly practical guide.
User Reviews
Only logged in customers who have purchased this product may leave a review.
Original price was: $5.00.$2.50Current price is: $2.50.

There are no reviews yet.