
- 472 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
API Design for C++
About this book
API Design for C++ provides a comprehensive discussion of Application Programming Interface (API) development, from initial design through implementation, testing, documentation, release, versioning, maintenance, and deprecation. It is the only book that teaches the strategies of C++ API development, including interface design, versioning, scripting, and plug-in extensibility. Drawing from the author's experience on large scale, collaborative software projects, the text offers practical techniques of API design that produce robust code for the long term. It presents patterns and practices that provide real value to individual developers as well as organizations. API Design for C++ explores often overlooked issues, both technical and non-technical, contributing to successful design decisions that product high quality, robust, and long-lived APIs. It focuses on various API styles and patterns that will allow you to produce elegant and durable libraries. A discussion on testing strategies concentrates on automated API testing techniques rather than attempting to include end-user application testing techniques such as GUI testing, system testing, or manual testing. Each concept is illustrated with extensive C++ code examples, and fully functional examples and working source code for experimentation are available online. This book will be helpful to new programmers who understand the fundamentals of C++ and who want to advance their design skills, as well as to senior engineers and software architects seeking to gain new expertise to complement their existing talents. Three specific groups of readers are targeted: practicing software engineers and architects, technical managers, and students and educators.- The only book that teaches the strategies of C++ API development, including design, versioning, documentation, testing, scripting, and extensibility- Extensive code examples illustrate each concept, with fully functional examples and working source code for experimentation available online- Covers various API styles and patterns with a focus on practical and efficient designs for large-scale long-term projects
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Information
Introduction
Publisher Summary
1.1 What are Application Programming Interfaces?

1.1.1 Contracts and Contractors

1.1.2 APIs in C++
Table of contents
- Cover image
- Title page
- Table of Contents
- Copyright
- Foreword
- Preface
- Acknowledgments
- Author Biography
- Chapter 1. Introduction
- Chapter 2. Qualities
- Chapter 3. Patterns
- Chapter 4. Design
- Chapter 5. Styles
- Chapter 6. C++ Usage
- Chapter 7. Performance
- Chapter 8. Versioning
- Chapter 9. Documentation
- Chapter 10. Testing
- Chapter 11. Scripting
- Chapter 12. Extensibility
- Appendix A. Libraries
- Bibliography
- Index