zoukankan      html  css  js  c++  java
  • 设计模式概述

    前言

    大约在一年前学习过一段时间的设计模式,但是当时自己的学习方式比较低效,也没有深刻的去理解、运用所学的知识.

    所以现在准备系统的再重新学习一遍,写一个关于设计模式的系列博客.

    废话不多说,正文开始.

    1. 设计模式是什么

    设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解并且保证代码可靠性.

    2. 学习设计模式的好处

    1. 提高开发效率,使用设计模式可以避免我们做一些重复工作
    2. 减少开发人员的沟通成本.
    3. 阅读源码,更深入的理解使用的框架和类库
    4. 自己写出灵活性高、易维护、易扩展和易复用的代码

    3. 设计模式的分类

    根据用途设计模式可分为创建型、结构型和行为型三种

    3.1 创建型设计模式

    创建型模式是处理对象创建的设计模式,试图根据实际情况使用合适的方式创建对象。

    5种创建型设计模式(简单工厂模式不算):

    3.2 结构型设计模式

    结构型设计模式是借由一以贯之的方式来了解元件间的关系,以简化设计.

    一以贯之: 指做人做事,按照一个道理,从一而终,出自《论语·里仁》。

    注: 以上是百科的解释,一以贯之是我自己百度贴上的,又能学到技术又能学到成语,看这篇博客赚翻了有没有.

    七种结构型设计模式:

    • 适配器模式
    • 桥接模式
    • 组合模式
    • 装饰者模式
    • 外观模式
    • 享元模式
    • 代理模式

    3.3 行为型设计模式

    行为型设计模式是用来识别对象之间的常用交流模式并加以实现。如此,可在进行这些交流活动时增强弹性.

    十一种行为型设计模式:

    • 职责链模式
    • 命令模式
    • 解释器模式
    • 迭代器模式
    • 中介者模式
    • 备忘录模式
    • 观察者模式
    • 状态模式
    • 策略模式
    • 模板方法模式
    • 访问者模式

    4. 学习设计模式的一些其他准备工作

    学习设计模式还需要一些其他的知识储备,例如:

    • UML类图相关知识(部分示例使用UML类图演示,如没有相关知识,请移步我的上一篇博客 UML类图简介)
    • 了解面向对象设计原则

    5. 面向对象设计原则

    移步 -> 面向对象设计原则

    6. 主要参考文献

    大话设计模式

    Java设计模式

    7. 代码&类图下载地址

    github地址

  • 相关阅读:
    Move Zeroes
    Intersection of Two Arrays II
    Intersection of Two Arrays
    Create Maximum Number
    Leetcode version 2
    JDBC学习笔记
    九章算法基础班
    九章算法强化班
    LeetCode
    Amazon High Frequent 9 problems
  • 原文地址:https://www.cnblogs.com/xisuo/p/11160184.html
Copyright © 2011-2022 走看看