创建型模式
就是用来创建对象的模式,抽象了实例化的过程。它帮助一个系统独立于如何创建、组合和表示它的那些对象。本文对五种常用创建型模式进行了比较,通过一个游戏开发场景的例子来说该如何使用创建型模式。所有的创建型模式都有两个永恒的主旋律:第一,它们都将系统使用哪些具体类的信息封装起来;第二,它们隐藏了这些类的实例是如何被创建和组织的。
结构型模式
顾名思义讨论的是类和对象的结构,它采用继承机制来组合接口或实现(类结构型模式),或者通过组合一些对象,从而实现新的功能(对象结构型模式)。这些结构型模式,它们在某些方面具有很大的相似性,仔细推敲,侧重点却各有不同。
行为型模式
创建型模式和结构型模式强调的都是静态的类实体之间的关系,行为型模式着力解决的是类实体之间的通讯关系。希望以面向对象的方式描述一个控制流程。以往的经历中大多是解决类实体的封装问题,对于类之间的通讯方式上,并没有刻意的去理解,所以有些行为型模式相对陌生。
模板模式
变化一直以来都是软件设计的永恒话题,在XP编程中提倡拥抱变化,积极应对。如何更好的去抓住变化点,应对变化?如何更好的提高代码复用?通过学习模板方法模式,您应该有一个新的认识。[
命令模式
“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但某些场合,无法抵御变化的紧耦合是不合适的。如何将“行为请求者”与“行为实现者”解耦?将一组行为抽象为对象,可以实现松耦合。
迭代器模式
在面向对象的软件设计中,经常会遇到一类集合对象,这类集合对象的内部结构可能有着各种各样的实现,但是归结起来,一是集合内部的数据存储结构,二是遍历集合内部的数据。
观察者模式
在软件构建中,需要为某些对象建立一种“通知依赖关系”。如果依赖关系过于紧密,将使软件不能很好地抵御变化。使用面向对象技术,可以弱化依赖关系,并形成稳定的依赖关系。实现软件体系结构的松耦合。
[
转载于:https://blog.51cto.com/aspneteye/262255