定义适配器模式:
适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。
外观模式提供了一个统一的接口,用来访问子系统中的一群接口,外观定义了一个高层接口,让子系统更容易使用。
适配器有类适配器和对象适配器两种
设计原则
最少知识原则告诉我们要减少对象之间的交互,只留几个“密友”。
最少知识原则:只和你的密友谈话。意思是,当你正在设计一个系统,不管是任何对象,你都要注意它所交互的类有哪些,并注意它和这些类是如何交互的。
这个原则提供了一些方针:就任何对象而言,在该对象的方法内,我们只应该调用属于一下范围的方法:
该对象本身
被当作方法的参数而传递进来的对象
次方法所创建或实例化的任何对象
注:上面的三个方针:如果某对象是调用其他的方法的返回结果,不要调用该对象的方法。
- 对象的任何组件
要点
1.当需要使用一个现有的类而其接口并不符合你的要求时,就用适配器
2.当需要简化并统一一个很大的接口或一群复杂的接口时,就使用外观
3.适配器改变接口以符合客户的期望
4.外观将客户从一个复杂的子系统中解耦
5.实现一个适配器可能需要一番功夫,也可能不费工夫,视目标接口的大小与复杂度而定
6.实现一个外观,需要将子系统组合进外观中,然后将工作委托给子系统执行
7.适配器模式有两种形式:对象适配器和类适配器。类适配器需要用到多重继承
8.你可以为一个子系统实现一个以上的外观
9.适配器将一个对象包装起来以改变其接口;装饰者将一个对象包装起来以增加新的行为和责任;而外观将一群接口对象“包装”起来以简化其接口