美文网首页Android设计模式
设计模式几种类型

设计模式几种类型

作者: 忘尘无憾 | 来源:发表于2017-12-27 11:05 被阅读9次

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。

设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

项目中合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是设计模式能被广泛应用的原因。

GOF

在 1994 年,由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 四人合著出版了一本名为《Design Patterns - Elements of Reusable Object-Oriented Software》(中文译名:设计模式 - 可复用的面向对象软件元素)的书,该书首次提到了软件开发中设计模式的概念。该书提出了23种设计模式,并分成三大类:创建型模式(Creational Patterns)结构型模式(Structural Patterns)行为型模式(Behavioral Patterns)

他们所提出的设计模式主要是基于以下的面向对象设计原则。

  • 接口编程而不是对实现编程
  • 优先使用对象组合不是继承

创建型模式

主要用于处理对象的创建,实例化对象。

创建型设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,不再由我们直接实例化对象。

而是根据特定场景,由程序来确定创建对象的方式,从而保证更大的性能、更好的架构优势。

  • 单例模式(Singleton)
  • 建造者模式(Builder)
  • 原型模式(Prototype)
  • 简单工厂模式(Simple Factory)(不在23设计模式之中)
  • 工厂方法模式(Factory Method)
  • 抽象工厂方法模式(Abstract Factory)

行为型模式

描述类或对象怎样进行交互和职责分配。

行为型设计模式特别关注对象之间的通信,用于帮助系统间各对象的通信,以及如何控制复杂系统中流程。

  • 策略模式(Strategy Pattern)
  • 状态模式(State Pattern)
  • 责任链模式(Chain of Responsibility Pattern)
  • 解释器模式(Interpreter Pattern)
  • 命令模式(Command Pattern)
  • 观察者模式(Observer Pattern)
  • 备忘录模式(Memento Pattern)
  • 迭代器模式(Iterator Pattern)
  • 模板方法模式(Template Pattern)
  • 访问者模式(Visitor Pattern)
  • 中介者模式(Mediator Pattern)
  • 空对象模式(Null Object Pattern)(不在23设计模式之中)

结构型模式

处理类或对象间的组合。

结构型设计模式关注类和对象的组合,用于帮助将多个对象组织成更大的结构。

继承的概念被用来组合接口和定义组合对象获得新功能的方式。

  • 代理模式(Proxy Pattern)
  • 组合模式(Composite Pattern)
  • 适配器模式(Adapter Pattern)
  • 装饰器模式(Decorator Pattern)
  • 享元模式(Flyweight Pattern)
  • 外观模式(Facade Pattern)
  • 桥接模式(Bridge Pattern)
  • 过滤器模式(Filter、Criteria Pattern)(不在23设计模式之中)




具体设计模式的简介,待更新...

引用
设计模式RUNOOB.COM
几种常用的设计模式介绍

相关文章

  • 设计模式几种类型

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。 设计模式是...

  • 2017年面试问题

    垃圾回收机制 spring MVC设计模式 JVM内核 类加载机制几种类型以及原理 currenthashmap ...

  • 003.单例模式

    接触学生的时候,总是在说设计模式很重要,至少应该知道几种设计模式?但是,也是给大家简简单单的介绍了几种!设计模式就...

  • 设计模式的原则及UML类图

    设计模式类型 设计模式分为三种类型: 创建型模式 结构型模式 行为型模式 设计原则 软件开发的23种设计模式,就是...

  • 项目开发-------iOS设计模式

    iOS的设计模式大体可以分为以下几种设计模式 1.创建型:单例设计模式、抽象工厂设计模式 2.结构型:MVC 模式...

  • JS设计模式深入理解—工厂模式、寄生构造函数模式和稳妥构造函数模

    在学习《JavaScript高级程序设计》(第3版)第六章创建对象时,遇到了针对创建自定义类型对象的几种设计模式。...

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

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

  • 单例模式

    单例设计模式是几种设计模式中比较容易理解的,手写单例模式也是面试频繁问到的。下面总结一下单例模式的几种写法: //...

  • 设计模式(Day01)

    本文包括:创建型模式【工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式】 设计模式的类型 设计模式的类型:1...

  • Java中的设计模式有哪些?

    一、设计模式的分类 设计模式是不分语言的,大概可总结为设计模式有3种类型及23种模式! 设计模式主要分三个类型:创...

网友评论

    本文标题:设计模式几种类型

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