Distinguishing between the Bridge, adapter, proxy, decorator, and the facade is not always easy. At first glance, both the bridge and the adapter look almost the same, and there is just a small step from a proxy to a decorator, which sometimes looks almost like a facade. To help you select the appropriate pattern, I have put together a few guidelines.
Both the bridge and the adapter design patterns look completely the same. They implement one interface and map it into another. The difference lies in the motivation for using the pattern.
When you define both the abstraction (the public interface) and the implementation (the actual worker object) at the same time, you are creating a bridge. If, however, you already have an existing object that implements an interface and you have to use it in an environment with...