查看文章 |
在深入学习每一种设计模式之前,首先要了解一下设计模式分类,通过分类我们能够在实际应用过程中,有目的地选择某一类设计模式来进行设计,然后定位到某一个类中的具体的设计模式。 闲话少说,设计模式分为三个大类,包括创建型模式(Creational Patterns)、结构型模式(Structural Patterns)和行为型模式(Behavioral Patterns)。下面分别对这三个分类进行说明,讲述每一个分类中都包含哪些具体的设计模式。 创建型模式(Creational Patterns) 创建型模式主要考虑系统设计中与资源的合理利用相关的创建方式,尤其是在面向对象设计中,创建对象对所设计的系统来说,是存在一定的开销的。如何能够选择合适的创建方法,选择合适的模式来完成软件设计,能够使系统被良好地设计。 创建型模式主要包括如下6个具体模式: 01.简单工厂模式(Simple Factory) 结构型模式(Structural Patterns) 系统中已经创建了一些用来完成具体功能的对象,然后要考虑的是如何有效地管理这些存在于系统中的资源,在面向对象设计中,这些资源以对象(实例)的形式呈现。由于系统中可能存在大量的对象,而且每个对象很可能不是独立存在地,必然要与其他的对象相互关联,即对象之间存在依赖性。如果通过在设计中研究未来系统中这些对象的组织结构的设计,不仅能够提高系统的性能,还能够使系统易于维护。 从模块的角度来看,合理的设计结构能够实现系统中各个模块之间解耦,不至于使系统遭遇“牵一动百”的痛苦。可见,结构模式还是非常基础的设计模式。 结构型模式主要包括如下7个具体模式: 01.门面模式(Facade) 行为型模式(Behavioral Patterns) 基于上述两类模式,接下来要考虑的是系统中存在的对象之间的交互关系的设计,即对象的行为。采用什么样的交互方式,如何进行协作才能更好地实现系统的功能,提高系统的性能,这是行为型模式所关心的设计问题。 行为型模式主要包括如下11个具体模式: 01.模板方法模式(Template Method) 上面是设计模式的概述,我们还没有涉及到每一种具体的设计模式。但是通过上面的讲述,应该能够分清设计模式所涉及到的三个方面,他们分别是针对什么样的问题,所关注的的重点是什么。 对于每一类设计问题,采取何种设计,可以深入学习每一种具体的设计模式,来改善系统的设计。后面我们系统地学习设计模式。 |

