知识卡片
桥接分离维度
内容
桥接模式适合两个或多个维度独立变化的场景。把抽象和实现拆开组合,可以避免类数量随维度笛卡儿积爆炸;它本质上是在代码层面贯彻[[维度识别变化]]。
参考来源
- 位置:《程序员的底层思维》第5章《维度思维》5.5节「设计模式中的维度思维」(源文件:Cheng Xu Yuan De Di Ceng Si Wei_split_009.html)
- 结论依据:原文用3种笔型号×5种颜色继承会产生15个类的"类爆炸"问题,引出桥接模式用组合替代继承分离两个可变维度,直接支持卡片论点。
- 原始内容:"如果采用继承的方案,则需要3×5=15个类。……采用这种继承的方案会带来一个副作用,就是类爆炸。……将抽象与实现分离,使它们可以独立变化。桥接模式用组合关系代替继承关系,从而降低了抽象和实现这两个可变维度的耦合度。"