Head First 设计模式- 第十二章和第十三章笔记
复合模式
模式通常被一起使用,并被组合在同一个设计解决方案中。
复合模式在一个解决方案中结合两个或多个模式,以解决一般或重复发生的问题。
MVC是复合模式,结合了观察者模式、策略模式和组合模式。
模型使用观察者模式,以便观察者更新,同时保持两者之间解耦。
控制器是视图的策略,视图可以使用不同的控制器实现,得到不同的行为。
视图使用组合模式实现用户界面,用户界面通常组合了嵌套的组件,像面板、框架和按钮。
这些模式携手合作,把MVC模型的三层解耦,这样可以保持设计干净又有弹性。
适配器模式用来将新的模型适配成已有的视图和控制器。
复合模式结合两个或以上的模式,组成一个解决方案,解决一再发生的一般性问题。
真实世界中的模式
模式是在某情境(context)下针对某问题的某种解决方案。
反模式告诉你如何采用一个不好的解决方案解决一个问题。
桥接,使用桥接模式(Bridge Pattern)不只改变你的实现,也改变你的抽象。
生成器,使用生成器模式(Bulider Pattern)封装一个产品的构造过程,并允许按步骤构造。
责任链,当你想要让一个以上的对象有机会能够处理某个请求的时候,就是用责任链模式(Chain of Responsibility Pattern)。
蝇量,如想让某个类的一个实例能用来提升许多“虚拟实例”,就使用蝇量模式(Flyweight Pattern)。
解释器,使用解释器模式为语言创建解释器。
中介者,使用中介者模式来集中相关对象之间复杂的沟通和控制方式。
备忘录,当你需要让对象返回之前的状态时,就使用备忘录模式。
原型,当创建给定类的实例的过程很昂贵或很复杂时,就使用原型模式。
访问者,当你想要为一个对象的组合增加新的能力,且封装并不重要时,就使用访问者模式。

浙公网安备 33010602011771号