Second Edition
API Design for C++
Learn the strategies of C++ Application Programming Interface (API) development, including design, versioning, documentation, testing, scripting, and extensibility.
Buy It On
Buy It on Amazon
Buy It On Elsevier
API Design for C++
API Design for C++
Key Features
  • The only book that teaches the complete strategies of C++ API development, including design, versioning, documentation, testing, scripting, and extensibility
  • Updated for the latest C++ standards, including C++11, C++14, C++17, C++20, and C++23.
  • Covers various API styles and patterns with a focus on practical and efficient designs for large-scale long-term projects
  • Extensive code examples illustrate each concept with fully functional source code available online for experimentation
Book Image
Author Photo
API Design for C++
About The Author
Dr. Martin Reddy is an IEEE Fellow, an AAIA Fellow, and an ACM Distinguished Engineer. He has published over 40 professional articles, 10 patents, and 2 books. Dr. Reddy was co-founder and CTO of the AI technology company, PullString, which was acquired by Apple in 2019. At Apple, Martin was a software architect and designed major components and APIs of the Siri virtual assistant. Martin also spent 6 years at Pixar Animation Studios where he worked on the Academy Award Winning films “Finding Nemo”, “The Incredibles”, “Ratatouille”, and “Wall-E”. Before that, Dr. Reddy worked for 5 years at SRI International on distributed 3D terrain visualization technologies.
API Design for C++
Table of Contents
01
Introduction
02
Qualities
03
Patterns
04
Design
05
Styles
06
C++ Usage
07
C++ Revisions
08
Performance
09
Concurrency
10
Versioning
11
Documentation
12
Testing
13
Objective-C
14
Scripting
15
Extensibility
A
Libraries
What Readers Are Saying
A must-have for serious C++ software developers

This is an outstanding book which covers a very large range of topics very effectively. [...] The book never loses sight of the motivation for a solid API - the winners are your clients and your business. [...] If you're writing C++ (or even C) code for other people to use, you need this book.

D. Smith
At last, an excellent book on how to design large scale software

API Design for C++ fills in the gap between all of these [other books] by demonstrating the techniques to develop a robust API that can be extended, refactored and ultimately used for years to come.

P. Rouse
Great value book, especially for junior software engineers

I recommend any younger developers to read this book who hope to build their skill sets in software architecture and building modular codebases. As someone who is frequently programming and trying to improve, I found this book one of the most useful out there from a software engineering perspective.

C. Howard
More Reviews on Amazon
 
Source code examples from API Design for C++
The book is supported by a complete set of the source code examples contained within the text. These source files are provided for you to download and experiment with the code yourself. The examples were designed to be as simple as possible, while still being useful and illustrative. The code should compile on Mac, Windows, and Linux.
 
Buy The Book On
Buy It on Amazon
Buy It On Elsevier

© 2024 Martin Reddy, All Rights Reserved