15: Extensibility
Abstract
Extensibility is an important aspect of application programming interface (API) design because it lets users expand the base functionality without requiring you to support their needs explicitly. Most of this chapter deals with how to create a Plugin API. It is a way for users to extend the functionality of your API in defined ways by creating dynamic libraries that are discovered and loaded at run time. The chapter deals with how to create stable C++ interfaces and cover the entire architecture, including the Plugin API itself, the Plugin Manager, and example plugins. The chapter also covers other ways to extend an API, such as through inheritance, with a specific example of the Visitor design pattern. Extensibility ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access