设计模式文章 Index

255 阅读2分钟

观前语

先学习七大原则,明白设计模式中为什么要这么设计;再学习各个设计模式,对照着设计原则,明白为什么设计模式为什么要这么设计,主要要解决什么问题。

不要拘泥于具体模式里面的要求,不同的语言也会有所不同。例如,Java 里面有抽象类,而 Go 没有,没必要太刻板。学习设计模式建议要根据自己日常学习,使用的语言进行对应学习。

设计模式分类

范围-目的创建型模式结构型模式行为型模式
类模式工厂模式(class-)适配器模板模式、解释器
对象模式单例、原型、抽象工厂、生成者(instance-)适配器、代理、桥接、装饰、外观、享元、组合策略、命令、职责链、状态、观察者、中介者、迭代器、访问者、备忘录

按照目的分类

  • 创建型 - 更加关注的是如何创建对象,将对象的创建和使用进行分离
  • 结构型 - 如何将类或者对象按照某种形式组合成一个更大的结构
  • 行为型 - 类和对象之间如何相互协同,完成单个对象无法独立完成的任务,以及职责划分

按照范围分类

  • 类 - 主要是处理类和子类之间的关系,这些关系是通过继承来建立,在编译的时候就已经明确确定下来了
  • 对象 - 主要是处理对象之间的关系,可以通过组合、聚合等方式来建立,具有动态性,运行时刻是可以进行改变

文章索引 Index

设计原则

创造型模式

结构型模式

行为模式