美文网首页
设计模式:什么是设计模式

设计模式:什么是设计模式

作者: 吴赵笔记 | 来源:发表于2018-06-29 16:13 被阅读0次

设计模式

什么是设计模式?

设计模式就是一套反复被使用的、为多数人知晓的、经过分类编目的、代码设计经验的总结。也就是在开发过程中约定俗成的代码设计的规范和模板。
根据设计模式的参考书 Design Patterns - Elements of Reusable Object-Oriented Software(设计模式 - 可复用的面向对象软件元素) 中所提到的,总共有 23 种设计模式。分为三大类:创建型模式(Creational Patterns)、结构型模式(Structural Patterns)、行为型模式(Behavioral Patterns)。

  • 创建型模式:
    这个类型的设计模式 在创建对象的同时隐藏创建逻辑的方式,而不是直接通过new去实例化对象。这样程序在判断针对某个给定实例需要创建哪些对象时更加灵活。
  • 主要包括下面五种具体的设计模式:
    工厂模式(Factory Pattern)、抽象工厂模式(Abstract Factory Pattern)、单例模式(Singleton Pattern)、建造者模式(Builder Pattern)和原型模式(Prototype Pattern)。
  • 结构型模式:
    这类设计模式关注类和对象的组合。
  • 主要包括下面七种具体的设计模式:
    适配器模式(Adapter Pattern)、桥接模式(Bridge Pattern)、组合模式(Composite Pattern)、装饰器模式(Decorator Pattern)、外观模式(Facade Pattern)、享元模式(Flyweight Pattern)和代理模式(Proxy Pattern)
  • 行为型模式:
    这类设计模式关注对象之间的通信。
  • 主要包括下面十一种具体的设计模式:
    责任链模式(Chain of Responsibility Pattern)、命令模式(Command Pattern)、解释器模式(Interpreter Pattern)、迭代器模式(Iterator Pattern)、中介者模式(Mediator Pattern)、备忘录模式(Memento Pattern)、观察者模式(Observer Pattern)、状态模式(State Pattern)、策略模式(Strategy Pattern)、模板模式(Template Pattern)和访问者模式(Visitor Pattern)。

六大原则

  • 开闭原则(Open Close Principle): 对扩展开放,对修改关闭。实现热插拔,提高扩展性。
  • 里氏代换原则(Liskov Substitution Principle): 实现抽象的规范,实现子父类互相替换;
  • 依赖倒转原则(Dependence Inversion Principle): 针对接口编程,实现开闭原则的基础;
  • 接口隔离原则(Interface Segregation Principle): 降低耦合度,接口单独设计,互相隔离;
  • 迪米特法则,又称最少知道原则(Demeter Principle): 功能模块尽量独立;
  • 合成复用原则(Composite Reuse Principle): 尽量使用合成/聚合的方式,而不是使用继承。

为什么使用设计模式?

使用设计模式能够保证代码的可重用性,让代码更容易让阅读者理解,保证代码的可靠性。

相关文章

  • 了解 MVVM 以及为什么它实际上是有意义的!

    什么是设计模式? 好吧,在讨论 MVVM 或其他设计模式之前。首先,为什么我们需要这些设计模式,什么是设计模式? ...

  • 2018-01-07

    大话设计模式——开篇 1、什么是设计模式? 设计模式(Design Pattern)...

  • 面向对象设计模式-6大原则

    什么是设计模式? iOS内平时有很多设计模式,如:delegate,单例模式,观察者模式,工厂模式…… 设计模式是...

  • 面向对象中23种设计模式介绍

    什么是设计模式? 设计模式分为哪几种? 什么是设计模式? 设计模式的六大原则 1、开闭原则(Open Close ...

  • Java设计模式总汇一

    PS:首先我们要带着问题读文章 什么是设计模式 为什么要用设计模式 使用设计模式有什么好处 设计模式是一套被反复使...

  • 开发及常用框架中常见的设计模式

    一、什么是设计模式 二、为什么要使用设计模式? 三、何时使用设计模式 四、六大设计原则 五、不遵循设计模式可能会导...

  • 《松本行弘的程序世界》之设计模式

    什么是设计模式 设计模式是个编程术语,它是指设计上经常反复使用的模式。 主要的23中设计模式 Singleton模...

  • 23种设计模式学习总结-第一遍

    如何学? 置顶:轮子哥指导如何学习“设计模式” 什么是设计模式? 设计模式推荐书籍w3c设计模式详解23中设计模式全解析

  • 简说设计模式之策略模式

    前言:对于设计模式基础概念可以去看[简说设计模式之设计模式概述] 一、什么是策略模式 策略(Strategy)模式...

  • iOS设计模式简介

    编码是门艺术 设计模式的基本原则 设计模式的类型 设计模式一般应用于复杂的项目 为什么会抽象出设计模式?设计模式是...

网友评论

      本文标题:设计模式:什么是设计模式

      本文链接:https://www.haomeiwen.com/subject/dpmayftx.html