C#设计模式:2.外观模式 u3d学习总结笔记本

外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。

这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。

//==========================================

意图:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

主要解决:降低访问复杂系统的内部子系统时的复杂度,简化客户端与之的接口。

何时使用: 1、客户端不需要知道系统内部的复杂联系,整个系统只需提供一个"接待员"即可。 2、定义系统的入口。

如何解决:客户端不与系统耦合,外观类与系统耦合。

解释:简单来说,客户端需要调用一个特别复杂的子系统中的多个接口,如果直接调用逻辑处理起来会非常复杂,而且不便于系统扩展。外观模式把这个复杂的子系统统一起来,提供几个高层接口,以备客户端进行调用。通俗来说是:子系统是一个黑匣子,提供若干个透明接口以备调用。

(一个类管理,执行多个类的组合方法)

例子:

MyComponent_TpsCamera第三人称通用相机

通用相机类为高层接口界面

旋转电机类,移动电机类,约束器类为子系统

使用例子中:

控制器(MyTpsCameraControl ) 通过调用 通用相机类(MyComponent_TpsCamera)

中的各种集合方法,调动子系统们进行复杂逻辑处理

这个过程中 "控制器" 只是在调用 "通用相机类"中的方法,一步达到目的,使用简单。

其中子系统复杂的逻辑关系则被隐藏了。

猜你喜欢

转载自blog.csdn.net/qq_40346899/article/details/87898756