Bridge
The Bridge pattern is a design pattern whose basic principle is to
separate a changing (unstable) interface from a changing implementation of this
interface. The Adapter design pattern deals
with a similar idea, however, it separates a predefined stable interface from an
implementation which changes from time to time. Bridge expects that both the
implementation of a system component and the abstract interface the client is
using to work with this component will change. It builds an imaginary "bridge"
between these varying parts. This is one of the more complicated design
patterns, let's go through it
Motivation
Larger information systems are separated into modules which can be developed by different development teams. If two communicating modules often change over time, it makes sense to build an abstract interface on both sides so that changing the interface of one module doesn't force the second module to adapt to this change and vice versa.
Pattern
You've probably already read somewhere on our network that interfaces are especially used in more complex projects. Bridge defines not one, but two interfaces at one place in the application, making it really suitable for robust projects. It introduces the following interfaces:
...End of the preview...

Premium article
ict.social is a large database made up of manuals and tutorials, whose main goal is to provide high-quality IT education to everyone. We started out in the Czech republic, where we display roughly a million articles per month and receive plenty of gratitude from our users. Thanks to our successful establishment, we are now bringing these articles to the rest of the world.
Although we are trying to keep our content free of charge, maintaining the site is a huge effort for everyone involved. Therefore, some content (exercises and more advanced material) costs network points. Don't worry, they're really cheap :)
Article description
Requested article covers this content:
The Bridge pattern separates an unstable interface from an unstable implementation of this interface. Unlike Adapter, it assumes changes on both sides.
Buying this article gives you unlimited access to it forever. You will learn some more and help us keep giving our site maintenance which helps you and others get better futures. It's a win-win.
This article is licensed: Premium, by buying this article, you agree with the terms of use.
You gain points by supporting our network. This is done by sending a helpful amount of money to support the site, or by creating content for the network.
You can get points immediately using:
![]() |
![]() |
![]() |
Credit card | SMS | Wire transfer |