状态模式二--外观模式

外观模式:

  为子系统定义一组统一的接口,这个高级的接口会让子系统更容易被使用

  比如汽车内部有许多子系统; 引擎系统 传动系统  悬吊系统 等 驾驶者只需要通过高级接口(方向盘 踏板 仪表盘)就可以轻易操控汽车

优点:1,节省时间,减少系统耦合度(系统构建时间)

        2,易于分工开发,开发者只需要了解对方负责系统的Facade接口类,不必深入了解其中的运行方式

        3,增加系统的安全性

重点:能将系统内部的互动细节隐藏起来,并提供一个简单方便的接口,就可以操作一个复杂系统并让他们顺利运行

         外观模式:可用于游戏主程序。。。。

注意:由于将所有子类集中在Facade接口类中,最终会导致Facade接口类过于庞大且难以维护,这种情况下,

         可以重构Facade类,将功能相近的子系统进行整合,以减少内部系统的依赖性

         或者整合其他设计模式来减少Facade接口类过度膨胀

  

Client:客户端  用户

Facade:统一对外的界面

  1,整合所有子系统的接口及功能,并提供高级界面(或接口)供客户端使用

  2,接受客户端的信息后,将信息传送给负责的子系统

  

 SubSystemXXX:子系统

  原本会由不同的客户端来操作,改为只会由内部系统之间交互使用

   

Main

  

结论:将复杂的子系统交给单一的一个类负责,并提供单一界面给客户端使用,使客户端减少对系统的耦合度是外观模式的优点

猜你喜欢

转载自blog.csdn.net/chen4388/article/details/86470994