知名设计书领域驱动方面
的术语,正确的指出:
一个设计模式名称,抽象,共同设计结构的关键方面,会对创建一个可复用的面向对象设计很有用。参与类和它们的实例的设计模式标识,它们的角色,合作,责任的分发
。
每一个设计模式聚焦在一个特定的面向对象设计问题。在它应用时候,会描述它,它能不能在其他设计约束的视图中应用,以及结果和它的用法的平衡。因为我们最终一定会实现我们的设计,一个设计模式还提供案例,说明实现的代码。
即使设计模式描述面向对象设计,但是它们还是基于在主流面向对象编程语言中已经实现的实用的解决方案......
设计模式被划分到许多不同分类。在这章中,在探索特定模式更多细节前,我们会查看这些分类中的三种以及简短提到几个针对这些分类的模式案例。
创建型设计模式
创建型设计模式聚焦在处理对象的创建机制,其中对象用适合我们所处情况的方式来创建。否则,对象创建的基础方法可能导致项目的复杂度增加,虽然这些模式的目的是通过控制创建过程来解决这个问题。
模式中的一些被归入这个分类:构造器,工厂,抽象,原型,单例,建造者。
结构型设计模式
结构型模式关注对象组合以及通常确定实现不同对象之间关系的简单方法。在一个系统一部分更改的时候,它们有助于确保当系统的某个部分发生变化时,系统的整个结构不需要做同样的事情。它们也帮助将系统中不适合特定目的的部分重构到那些适合特定目的部分中。
被归入这个分类的模式:装饰器,门面,享元,适配器,代理。
行为型设计模式
行为型设计模式聚焦在改善或者简化系统中独立对象之间的交流。
一些行为型模式包括:迭代器,中介者,观察者,访问者。