You’ve probably read the chapter title, so you already know that this chapter is about plugins, specifically their design and implementation. Additionally, plugins will afford us the opportunity to explore design techniques to isolate platform-specific features. Before we dive into the details, however, let’s begin by defining what a plugin is.
7.1 What Is a Plugin?
A plugin is a software component that enables new functionality to be added to a program after the program’s initial compile. In this chapter, we’ll concentrate exclusively on runtime plugins, that is, plugins built as shared libraries ...