Introduction to Plug-ins

Plug-in architectures are an attractive solution for developers seeking to build applications that are modular, customizable, and easily extensible. What began as a clever way to allow third parties to add features to an application without access to source code has, for many developers, evolved into a full-blown component architecture. Core Foundation Plug-ins uses the basic code-loading facility of Core Foundation bundles to provide a standard plug-in architecture for OS X applications. Although this section is addressed primarily to host application developers, plug-in developers also need to read it in order to fully understand and make use of the CFPlugIn opaque type.

Organization of This Document

The examples in this section demonstrate how to create and work with CFPlugIn objects. The error-checking code has been removed for clarity. In practice, it is vital that you check for errors because passing bad parameters into Core Foundation routines can cause your application to crash.

These articles discuss the plug-in architecture and how they work:

These articles contain examples on how to create and use plug-ins:

To generate UUIDs programmatically see: