官术网_书友最值得收藏!

The Bridge design pattern

Decouple an abstraction from its implementation so that the two can vary independently
- GoF Design Patterns: Elements of Reusable Object-Oriented Software

In software engineering, one of the most popular notions is preferred composition over inheritance. Bridge design pattern promotes this popular notion. Similar to the adapter pattern, this pattern also comes under the structural design pattern family of the GoF Design Pattern. The approach of the Bridge pattern is to decouple an abstraction used by the client code from its implementation; that means it separates the abstraction and its implementation in to separate class hierarchies. And also, Bridge pattern prefers composition over inheritance because inheritance isn't always flexible and it breaks the encapsulation, so any change made in the implementer affects the abstraction used by the client code.

The bridge provides a way to communicate between two different independent components in software development, and a bridge structure provides you with a way to decouple the abstract class and the implementer class. So any change made in either the implementation class or the implementer (that is, the interface) doesn't affect the abstract class or its refined abstraction class. It makes this possible by using composition between the interface and the abstraction. Bridge pattern uses an interface as a bridge between the concrete classes of an abstract class and implementing classes of that interface. You can make changes in both types of class without any impact on the client code.

主站蜘蛛池模板: 合肥市| 自治县| 华阴市| 长子县| 民乐县| 乐亭县| 通海县| 芜湖市| 富源县| 莱阳市| 吉林市| 体育| 吴堡县| 襄城县| 西贡区| 资兴市| 铜山县| 乌鲁木齐县| 秦皇岛市| 拉萨市| 宁武县| 郓城县| 黄冈市| 吕梁市| 沂南县| 临泽县| 乌鲁木齐县| 邯郸市| 武义县| 新巴尔虎左旗| 百色市| 巫溪县| 伊吾县| 墨竹工卡县| 宽甸| 南皮县| 博野县| 维西| 新龙县| 镇平县| 嵊州市|