API Design Principles
summary
Argues that API work starts with top-down design—write example usage and docs first—rather than wrapping implementations, and shows practical consequences: how audience size forces stricter stability, GCC 5.1’s dual std::string ABI and MSVC release/debug ABI problems, and a checklist of ABI vs API compatible changes (eg. ABI incompatible: add new virtual functions or reorder members). Recommends pImpl, minimal surface, fail early and loudly, consistent error-info structures, testable mocks and 11 guiding principles used in reviews.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 2:30Good vs. bad APIs
- 6:16Design philosophies
- 8:54Audience impact on design
- 12:06API design considerations
- 20:25API and ABI evolution
- 25:32Guiding principles
- 45:32Conclusion
related talks
01h 36mThe Most Important API Design Guideline - No, It's Not That One
22mAwesome API Design
01h 18mAPI design: Lessons Learned
01h 06mGood API design
01h 01mAPI Design – How to Do It Better (and How Not To)
01h 29mC++ API & ABI versioning
27mAPI Design Through the Lens of Photography
32mBoost Your Development with Proper API Design
