淄博网站制作价格低,房屋装修设计图片欣赏,购物网站页面设计图片,延吉市建设厅网站外观模式 模式动机模式定义模式结构外观模式实例与解析实例一#xff1a;电源总开关实例二#xff1a;文件加密 模式动机
引入外观角色之后#xff0c;用户只需要直接与外观角色交互#xff0c;用户与子系统之间的复杂关系由外观角色来实现#xff0c;从而降低了系统的耦… 外观模式 模式动机模式定义模式结构外观模式实例与解析实例一电源总开关实例二文件加密 模式动机
引入外观角色之后用户只需要直接与外观角色交互用户与子系统之间的复杂关系由外观角色来实现从而降低了系统的耦合度。
模式定义
外观模式(Facade Pattern)外部与一个子系统的通信必须通过一个统一的外观对象进行为子系统中的一组接口提供一个一致的界面外观模式定义了一个高层接口这个接口使得这一子系统更加容易使用。外观模式又称为门面模式它是一种对象结构型模式。
模式结构
外观模式包含如下角色 Facade: 外观角色 SubSystem:子系统角色 根据“单一职责原则”在软件中将一个系统划分为若干个子系统有利于降低整个系统的复杂性一个常见的设计目标是使子系统间的通信和相互依赖关系达到最小而达到该目标的途径之一就是引入一个外观对象它为子系统的访问提供了一个简单而单一的入口。 外观模式也是“迪米特法则”的体现通过引入一个新的外观类可以降低原有系统的复杂度同时降低客户类与子系统类的耦合度。
外观模式要求一个子系统的外部与其内部的通信通过一个统一的外观对象进行外观类将客户端与子系统的内部复杂性分隔开使得客户端只需要与外观对象打交道而不需要与子系统内部的很多对象打交道。 外观模式的目的在于降低系统的复杂程度。 外观模式从很大程度上提高了客户端使用的便捷性使得客户端无须关心子系统的工作细节通过外观角色即可调用相关功能。
外观模式实例与解析
实例一电源总开关
现在考察一个电源总开关的例子以便进一步说明外观模式。为了使用方便一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。通过该电源总开关可以同时控制上述所有电器设备使用外观模式设计该系统。
实例二文件加密
某系统需要提供一个文件加密模块加密流程包括三个操作分别是读取源文件、加密、保存加密之后的文件。读取文件和保存文件使用流来实现这三个操作相对独立其业务代码封装在三个不同的类中。现在需要提供一个统一的加密外观类用户可以直接使用该加密外观类完成文件的读取、加密和保存三个操作而不需要与每一个类进行交互使用外观模式设计该加密模块。