【HeadFirst设计模式】7.适配器模式与外观模式
今晚学习完第七章,顺便做一下知识备忘。
适配器模模式:
定义:将一个类的接口,转换成客户期望的另一个接口、适配器让原本接口不兼容的类可以合作无间。
对象适配器:
类适配器:
外观模式:
提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。
最少知识原则:
只和你的密友交谈。
该对象本身;
被当做方法的参数而传递进来的对象;
此方法创建或者实例化的任何对象;
对象的任何组件;
知识要点:
当需要使用一个现有的类而其接口并不符合你的需要时,就使用适配器;
当需要简化并统一一个很大的接口或者一群复杂的接口时,使用外观;
适配器改变接口以符合客户的期望;
外观将客户从一个复杂的子系统中解耦;
实现一个适配器可能需要一番功夫,也可能不费功夫,视目标接口的大小与复杂而定;
实现一个外观,需要将子系统组合进外观中,然后将工作委托给子系统执行;
适配器模式有两种模式:对象适配器和类适配器。类适配器需要用到多继承;
可以为一个子系统实现一个以上的外观;
适配器将一个对象包装起来改变其接口;装饰者将一个对象包装起来以增加新的行为和责任;而外观将一群对象“包装”起来以简化其接口。
通过观察其目的,可以很好的区别适配器模式、装饰者模式、外观模式。