Use the Bridge pattern when…


You can:

  • Identify that there are operations that do not always need to be implemented in the same way.

You want to:

  • Completely hide implementations from clients.
  • Avoid binding an implementation to an abstraction directly.
  • Change an implementation without even recompiling an abstraction.
  • Combine different parts of a system at runtime.