设计模式介绍
在软考旅程中,我们接触到了一种称为设计模式的理念,其背后隐藏着四大核心要素:模式名称、问题、解决方案和效果。
1. 模式名称:这是一个简洁的助记名,用以描述模式的核心问题、解决方案及其效果。它为设计提供了一个较高的抽象层次,使人们能够更轻松地交流设计思想及结果。
2. 问题:这一部分详述了何时应使用此种模式,揭示了设计面临的挑战以及这些问题产生的背景。它可能涉及特定设计问题,如如何用对象表示算法,或是导致设计不灵活的类或对象结构。
3. 解决方案:这里描述了设计的组成部分、它们之间的关系,以及各自的职责和协作方式。由于模式如同一个模板,可应用于多种场合,因此解决方案提供的是设计问题的抽象描述,以及如何利用一般性的元素组合(类或对象组合)来解决这些问题。
4. 效果:这部分着重描述了模式应用后的影响,以及使用模式时需要考虑的权衡问题。虽然在设计决策时并不总是提及模式效果,但它们对于评估设计选择和理解使用模式的成本和收益却至关重要。
二、创建型设计模式的奥秘创建型模式致力于抽象实例化过程,帮助系统独立于如何创建、组合和表示其对象。它通过改变被实例化的类或使用实例化委托的方式来发挥作用。其主要特点有两个:一是封装了系统使用的具体类信息;二是隐藏了对象如何被创建和组合的过程。这使得创建型模式在对象的创建时机、方式、原因和灵活性方面拥有极大的优势。它还能配置使用结构和功能差异较大的对象系统。
三、探索结构性设计模式的精髓结构性模式主要关注如何组合类和对象以形成更大的结构。它采用继承机制来组合接口或实现,而非描述如何组合对象以实现新功能的方法。其中,Composite模式展示了如何构建类层次结构,而Flyweight模式则定义了共享对象的结构以提高效率和一致性。Facade模式使用单个对象代表整个子系统,而Bridge模式则将对象的抽象与实现分离,以便独立改变它们。Decorator模式则描述如何动态为对象添加职责,采用递归方式组合对象,允许添加任意多的职责。
四、行为设计模式的动态与交互行为模式关注算法和对象职责的分配,以及对象间的通信模式。它描绘了运行时难以跟踪的复杂控制流,将焦点从控制流转移到对象间的交互上。行为类模式如Template Method和Interpreter利用继承机制在类间分配行为。行为对象模式则描述了一组对等对象如何协作完成单个对象无法完成的任务。Observer模式定义了对象间的依赖关系,一旦模型状态发生变化,所有视图都会得到通知。其他行为对象模式常将行为封装在对象中并分配请求。
版权声明:《设计模式介绍》来自【石家庄人才网】收集整理于网络,不代表本站立场,所有图片文章版权属于原作者,如有侵略,联系删除。
https://www.ymil.cn/baibaoxiang/27980.html