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...
Continue further
You've come here and that's great! We believe that the first lessons showed you something new and useful
Do you want to continue the course? Go to the premium section.
Buy this course
This article is licensed: Premium, by buying this article, you agree with the terms of use.
- Unlimited and permanent access to individual lessons.
- High quality IT knowledge.
- Skills to help you get your dream and well-paid job.
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.
You gain credits 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.