Bridge is a structural design pattern that divides business logic or huge class into separate class hierarchies that can be developed independently.. One of these hierarchies (often called the Abstraction) will get a reference to an object of the second hierarchy (Implementation). The Bridge Design Pattern falls under the category of Structural Design Pattern.As part of this article, we are going to discuss the following pointers. Discussion. It increases the loose coupling between class abstraction and it’s implementation. The term “design pattern” became popular after the book, by the same name was published was back in 1994. Problem and Need for Bridge Design Pattern When there are inheritance hierarchies creating concrete implementation, you loose flexibility because of interdependence. This promotes the loose coupling between class abstraction & its implementation. Let's take a look at an example to better understand it. Bridge Design Pattern in C++ Back to Bridge description Bridge design pattern demo. Design patterns are simply formal names given to common patterns that seem to emerge from solving various architectural problems in software development. You get this decoupling by adding one more level of indirection i.e. Implementer: It defines the interface for implementation classes. Bridge Design Pattern is a Structural Design Pattern used to decouple a class into two parts – abstraction and it’s implementation – so that both can be developed independently. The bridge design pattern is one of the 23 well-known GoF design patterns. Free source code and UML. Bridge Design Pattern is used to decouples an abstraction used the client code from its implementation that means it separates the abstraction and its implementation in separate class hierarchies. The bridge pattern applies when there is a need to avoid permanent binding between an abstraction and an implementation and when the abstraction and implementation need to vary independently. Bridge - Free .NET Design Pattern C#. Abstraction : It is the core of the Bridge Design Pattern and it provides the reference to the implementer. Bridge Design Pattern in C# with Examples. And also Bridge pattern prefers the composition over the inheritance because inheritance isn’t always flexible and it breaks the encapsulation, so any change made in the implementor that … Bridge design pattern is a modified version of the notion of “prefer composition over inheritance”. In this article, I am going to discuss the Bridge Design Pattern in C# with examples. It is a common view some aspects of the Adapter pattern in the Bridge pattern. Elements of Bridge Design Pattern. Please read our previous article where we discussed the Decorator Design Pattern in C# with examples. The abstraction will be able to delegate some (sometimes, most) of its calls to the implementations object. The Bridge pattern is a composite of the Template and Strategy patterns. The motivation is to decouple the Time interface from the Time implementation, while still allowing the abstraction and the realization to each be modelled with their own inheritance hierarchy. Using the bridge pattern would leave the client code unchanged with no need to recompile the code. Refined Abstraction : It extends the abstarction to the new level where it takes the finer details one level above and hides the finer element from the implementors. However, to quote from this article: At first sight, the Bridge pattern looks a lot like the Adapter pattern in that a … Bridge design pattern is used to decouple a class into two parts – abstraction and it’s implementation – so that both can evolve in future without affecting each other.