外观模式为子系统中的一组接口提供一个一致的界面。Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
网上有许多安保系统应用外观模式的例子,在这里我举一个客服中心的例子,客户投诉一般会经过以下一系列操作:登记投诉信息、分配受理部门、提交投诉信息。
没有客服MM的时候,客户投诉需要自己操作登记信息、分配部门并且提交投诉等,我相信你一定会很快疯掉。
有了个客服MM后,用户直接和客服打交道,由客服MM替我们完成后继的操作。
在上面的例子里,服务MM的角色就是外观模式中定义的Facade(也有人称之为“门面”)。对于一系列复杂的操作(也就是程序中的子应用),用户并不关心这些操作的细节。这时我们需要提供一个统一访问这些复杂操作的入口,针对各子应用的所有操作都是通过这个入口来完成,对于用户来说,只关心这个入口提供的功能就可以了。
外观模式主要强调两方面的内容,一是所有对子应用的访问必须通过统一的入口来完成,二是这个入口只是被用来访问子应用中复杂的操作,不允许添加其它的业务逻辑。
上面客服MM的例子使用外观模式来实现,代码如下:
class OperationRegist{
void regist(){
//处理投诉的登记
}
}
class OperationDispatch{
void dispatch(){
//处理投诉的分配
}
}
class OperationSubmit{
void submit(){
//处理投诉的提交
}
}
class OperationFacade{
OperationRegist op1 = new OperationRegist();
OperationDispatch op2 = new OperationDispatch();
OperationSubmit op3 = new OperationSubmit();
void operate(){
op1.regist();
op2.dispatch();
op3.submit();
}
}
阅读全文
分享到:
相关推荐
总的来说,Facade模式和Simple Factory模式是Java设计模式中的重要组成部分,它们分别解决了简化复杂系统接口和对象创建的问题。学习和运用这些模式,不仅可以提高代码质量,还能使软件更加灵活,适应未来可能的变化...
在Java编程中,有23种经典的GoF(Gang of Four)设计模式,它们被分为三大类:创建型、结构型和行为型。本资源集合了这些模式的详细解释与源码分析,旨在帮助开发者深入理解和应用设计模式。 1. 创建型模式...
设计模式之Facade(外观) 设计模式之Proxy(代理) 设计模式之Adapter(适配器) 设计模式之Composite(组合) 设计模式之Decorator(油漆工) 设计模式之Bridge 设计模式之Flyweight(享元) 行为模式: 设计模式之Template ...
外观模式(Facade Pattern)是设计模式中的一种结构型模式,主要目的是为了解决复杂的系统接口问题,提供一个简单的统一入口,使得客户端可以更方便地使用系统。在Java中,外观模式通常用来隐藏系统的复杂性,对外只...
以上就是关于Java设计模式中的外观模式的基本介绍及其在`FacadeDemo`中的应用。通过这个模式,我们可以更好地管理和组织复杂的系统,提高代码的可读性和可维护性。同时,它也适用于那些需要提供统一接口,但又不想...
" JAVA 设计模式概述" JAVA 设计模式是指在软件设计过程中,为了提高代码的可维护性、灵活性和可扩展性所使用的一些惯用解决方案。JAVA 设计模式可以分为三种:创建模式、结构模式和行为模式。 1. 创建模式 创建...
外观模式(Facade Pattern)是一种结构型设计模式,它提供了一个简单的接口来访问复杂系统中的子系统,从而隐藏了子系统的复杂性。外观模式属于对象型模式,它通过创建一个外观类,将客户端与子系统解耦,使得客户端...
Java设计模式是软件工程中的一种最佳实践,它总结了在特定场景下解决常见问题的经验,为程序员提供了可重用的解决方案。本资料“《java设计模式》课后习题模拟试题解答——刘伟.zip”主要涵盖了Java设计模式的学习与...
Java设计模式是软件开发中的一种最佳实践,它总结了在解决特定问题时程序员们经常采用的有效方法。这个“JAVA设计模式-chm版”资源显然包含了关于Java设计模式的详细信息,便于理解和应用。设计模式是对常见问题的...
《Java设计模式》是刘伟教授的一本关于设计模式的教材,主要面向高等学校的学生和对Java编程有深入兴趣的开发者。设计模式是软件工程中的一种重要思想,它封装了在特定场景下的问题解决方案,可以提高代码的可读性、...
Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以被复用在各种不同的软件系统中。这个"JAVA设计模式(chm版)"是一个关于Java设计模式的电子书,采用CHM(Microsoft Compiled ...
章节介绍:1、爪哇语言结构性模式之变压器模式介绍 2、爪哇语言抽象工厂创立性模式介绍 3、工厂方法创立...10、设计模式之State 11、设计模式之Facade(外观) 12、设计模式之Interpreter(解释器) 13、设计模式之Visitor
在Java语言中,设计模式的应用广泛且至关重要,因为它们能帮助开发者遵循良好的编程原则,如开闭原则、单一职责原则、依赖倒置原则等。 首先,我们来看一些基本的设计模式类型: 1. 创建型模式:这类模式主要处理...
适合Java设计模式期末考试选择题复习,形式如下: 10.(单选题)Facade(外观)模式的意图是 正确答案: A A.希望简化现有系统的使用方法,你需要定义自己的接口 B.将一个无法控制的现有对象与一个特定借口相匹配。 C....
在《Java设计模式》这本书的模拟试题及其参考答案中,涉及了多条设计模式的知识点,以及它们的应用场景和实现方法。现在将这些知识点详细地解释如下: 1. 开闭原则(Open-Closed Principle, OCP): 开闭原则是面向...
java设计模式【之】外观模式【源码】【场景:积分兑换图书】 外观模式:对于复杂的类操作, 或者多个子系统互相间需要操作, 可以创建外观类对复杂的类进一步封装, 调用者只与外观类交互。 * 框架应用 * Mybatis...
Java设计模式是软件工程中的一种最佳实践,它是一种在特定情境下解决常见问题的经验总结。这份"java设计模式PPT"资源提供了系统化的学习材料,旨在帮助开发者提升编程思维,理解如何有效地组织代码,提高软件的可...
外观模式(Facade模式)是一种设计模式,主要用于简化子系统或组件之间的交互,为复杂的系统提供一个简单的接口。在Java中,这种模式可以帮助我们管理和组织大量的类和接口,使其对外呈现简洁的交互方式。 外观模式...
**外观(Facade)模式**是软件工程中一种常用的设计模式,属于结构型模式,它为复杂的子系统提供了一个统一的接口,使得客户端可以更简单地使用这些子系统。在Java编程中,外观模式的应用十分广泛,它能有效地降低...