While the pattern is not as popular as other well-known contenders, like Singleton, Factory and Composite, “Plug-in” is a powerful structural paradigm. It permits developers to create extensible software systems by means of a clever combination of Composition and interfaces. By "interfaces," I mean native ones, or defined in the form of abstract classes.

Read the full article here: Swapping Cache Back-End at Runtime in PHP

For more discussion go here: Blog Article Discussion