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. Let's take a look at an example to better understand it. 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. The term “design pattern” became popular after the book, by the same name was published was back in 1994. 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 … Using the bridge pattern would leave the client code unchanged with no need to recompile the code. Design patterns are simply formal names given to common patterns that seem to emerge from solving various architectural problems in software development. It is a common view some aspects of the Adapter pattern in the Bridge pattern. Problem and Need for Bridge Design Pattern When there are inheritance hierarchies creating concrete implementation, you loose flexibility because of interdependence. Bridge Design Pattern in C++ Back to Bridge description Bridge design pattern demo. 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. 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. You get this decoupling by adding one more level of indirection i.e. It increases the loose coupling between class abstraction and it’s implementation. 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 design pattern is one of the 23 well-known GoF design patterns. The Bridge pattern is a composite of the Template and Strategy patterns. In this article, I am going to discuss the Bridge Design Pattern in C# with examples. Bridge design pattern is a modified version of the notion of “prefer composition over inheritance”. Bridge - Free .NET Design Pattern C#. Free source code and UML. 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. Implementer: It defines the interface for implementation classes. Elements of Bridge Design Pattern. However, to quote from this article: At first sight, the Bridge pattern looks a lot like the Adapter pattern in that a … 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). Please read our previous article where we discussed the Decorator Design Pattern in C# with examples. Abstraction : It is the core of the Bridge Design Pattern and it provides the reference to the implementer. This promotes the loose coupling between class abstraction & its implementation. Bridge Design Pattern in C# with Examples. The abstraction will be able to delegate some (sometimes, most) of its calls to the implementations object. Discussion. 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.