桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变换。
实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来让它们独立变化,减少它们之间的耦合。
//抽象部分
public class Graphic
{
public Color color;
public Shape shape;
}
//实现部分接口
public class Color
{
public string color;
}
//实现部分接口
public class Shape
{
public string shape;
}
//Color具体实现
public class Red : Color
{
}
//Shape具体实现
public class Rect : Shape
{
}
其实就是封装变化,颜色和形状是变化点,那把这两个点单独封装起来。
书中也有句话:
只有真正深入地理解了设计原则,很多设计模式其实就是原则的应用而已,或许在不知不觉中国就在使用设计模式了。