001 什么是设计模式?

设计模式(Design Parttern)

我要正儿八经的弄懂设计模式。这是开始,先搞明白的什么是设计模式。

定义

设计模式是一套被 反复使用多数人知晓经过分类编目的代码设计经验的总结

为什么要用设计模式

为了 可重用 代码,让代码更容易的被他人理解并保证代码的 可靠性

谁这么叼设计牛模式

四人组( Gang of Four ),简称 GoF ,分别是 Erich Gamma, **Richard Helm **, **Ralph Johnson **和 John Vlissides 。但不是他们设计的,是他们在 95年的时候整理归纳 23 种最常用的设计模式并会变成一本书 Design Patterns: Elements of Reusable Object-Oriented Software 就是:《设计模式:可复用面向对象软件的基础》 。是经过时间的验证的,大家一定要学会。

怎么学

balabala ...

设计模式最重要的 4 个元素 模式名称 (Parttern Name)问题(Problem)解决方案 (Solution)效果 (Consequences)

学习设计模式我们就从这 4 个元素出发。一个一个弄清楚它。

  • 模式名称 (Parttern Name)

    就是这个模式的名字。简单明了的命名。
  • 问题 (Problem)

    描述了应该在何时使用模式,它包含了设计中存在的问题以及问题存在的原因
  • 解决方案 (Solution)

    该框架的解决方案。就是如何设计这个模式。描述了一个设计模式的组成成分,以及这些组成成分之间的相互关系,各自的职责和协作方式,通常解决方案通过UML类图和核心代码来进行描述。
  • 效果 (Consequences)

    描述了模式的优缺点以及在使用模式时应权衡的问题 (呈现)

说到这里,你都有啥框架

我们要掌握的应该除了GoF 说的 23 种模式还有加一个 简单工厂模式 (Simple Factory Pattern)也很常用还简单。我顺手就学会了。

来个预览先(参考)

001 什么是设计模式?_第1张图片
设计模式概述.png


看图得知,这是按照用途分为三种: 创建型(Creational, 结构型(Structural, 行为型(Behavioral 三种。
接下来就按照表格 模式名称这一列顺序一一讲解。学习难度和使用频率并不重要,因为我都要会。

你可能感兴趣的:(001 什么是设计模式?)