设计模式:外观模式(学习笔记)

项目示例:

家庭影院项目:

              基本功能:DVD播放器、投影仪、自动屏幕、环绕立体声、爆米花机  

              接口设计:

设计模式:外观模式(学习笔记)

           直接用遥控器:统筹各设备开关

外观模式:

           提供一个统一的接口,来访问子系统中一群功能相关接口外观模式定义了一个高层接口,让子系统更容易使用

           简单理解:涉及很多类,各类之间需要统筹,分组个子类,打包成统一的一个接口。

设计模式:外观模式(学习笔记)

外观-命令模式区别:

外观模式:只对外暴露一个顶层接口,对外接口简化。

命令接口:包装命令成对象,组合命令累解决问题。实现控制与系统具体功能解耦。

                命令模式-宏命令:加载命令数组,与外观模式相似。但是侧重点不同

外观-适配器模式区别:

外观模式:一个系统的对外接口,提炼,简化。

适配器模式:把对象的类接口转化成另一种模式。


外观模式原则(关键点):

          最少知识原则:尽量减少对象之间的交互,只留几个“密友”项目设计中就是不要让太多的类耦合在一起,方便维护和升级。

         对象的方法调用范围:
             该对象本身。
             调用外部对象时,外部对象作为参数传进来的对象。
             此方法中,自己创建和实例化的对象。例外返回值对象违背该原则。
             对象的组件。