设计模式学习(一)设计模式简介

一、学习设计模式 学习目标理解松耦合的设计思想 掌握面向对象的设计原则 掌握重构技法改善设计 掌握GOF核心设计模式什么是设计模式描述在我们周围不断重复发生的

一、学习设计模式

学习目标

  • 理解松耦合的设计思想
  • 掌握面向对象的设计原则
  • 掌握重构技法改善设计
  • 掌握GOF核心设计模式

什么是设计模式

  描述在我们周围不断重复发生的问题,以及该问题解决方案的核心。

使用设计模式的目的

提高系统模块的可复用性。

二、面向对象的思维模型

底层思维模型

  含义:向下的,目的在于把握机器底层原理,从微观理解对象构造。

  • 语言构造
  • 编译转换
  • 内存模型
  • 运行时机制

抽象思维模型

  含义:向上的,目的在于将我们周围的世界【需求】抽象为程序代码

  • 面向对象
  • 组件封装
  • 设计模式
  • 架构模式

三、设计模式分类

从目的来看

创建型模式

   主要解决对象创建的工作。【延迟创建】

结构型模式

  主要解决在需求变化的时候对对象结构改变带来的冲击。

行为型模式

  多个类之间交互时,职责的划分。

从范围来看

  • 类模式处理类与子类的静态关系。
  • 对象模式处理对象间的动态关系。

四、重构的关键技法

  • 静态 --> 动态
  • 早绑定 --> 晚绑定
  • 继承 --> 组合
  • 编译时依赖 --> 运行时依赖
  • 紧耦合 --> 松耦合