设计模式总结之模式分类
话说这个世界还是混沌之时,盘古抡起一把大斧,开辟了天与地,从此,这个世界有天有地,万事万物在这个世界才慢慢发展起来。
话说软件江湖还是混沌之时,无门无派,无招无式,GoF(Gang of Four,四个大师),穷理之熟,融会贯通,合著了《Design Patterns: Elements of Reusable Object-Oriented Software》(即《设计模式》)一书,从此,人人传颂天下武功出少林,设计模式看GoF,这个江湖开始热闹起来了。
……
我们先看设计模式的分类:
范围 |
创建型 |
结构型 |
行为型 |
类 |
Factory Method(工厂方法) |
Adapter(类) (适配器) |
Interpreter(解释器) Template Method(模版方法) |
对象 |
Abstract Factory(抽象工厂) Builder(建造者) Prototype(原型) Singleton(单例) |
Adapter(对象)(适配器) Bridge(桥接) Composite(组合) Decorator(装饰者) Façade(外观) Flyweight(享元) Proxy(代理) |
Chain of Responsibility(职责链) Command(命令) Iterator(迭代器) Mediator(中介者) Memento(备忘录) Observer(观察者) State(状体) Strategy(策略) Visitor(访问者) |
再细点分类:
范围 |
创建型 |
结构型 |
行为型 |
对象创建 |
Singleton(单例) Prototype(原型) Factory Method(工厂方法) Abstract Factory(抽象工厂) Builder(建造者) |
||
接口适配 |
Adapter(适配器) Bridge(桥接) Façade(外观) |
||
对象去耦 |
Mediator(中介者) Observer(观察者) |
||
抽象集合 |
Composite(组合) |
Iterator(迭代器) |
|
行为扩展 |
Decorator(装饰) |
Visitor(访问者) Chain of Responsibility(职责链) |
|
算法封装 |
Template Method(模板方法) Strategy(策略) Command |
||
性能与对象访问 |
Flyweight(享元) Proxy(代理) |
||
对象状态 |
Memento(备忘录) State(状态) |
||
其它 |
Interpreter(解释器) |
||
经典23种设计模式,Let's go:
创建型设计模式:
- Singleton Pattern(单例模式)
- Prototype Pattern(原型模式)
- Factory Method Pattern(工厂方法模式)
- Abstract Factory Pattern(抽象工厂模式)
- Builder Pattern(建造者模式)
结构型设计模式:
- Adapter Pattern(适配器模式)
- Bridge Pattern(桥接模式)
- Composite Pattern(组合模式)
- Decorator Pattern(装饰者模式)
- Façade 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 Method Pattern(模板方法模式)
- Visitor Pattern(访问者模式)
设计模式总结之模式分类相关推荐
- 大话设计模式-23中设计模式分类
设计模式的分类 总体设计模式分为三大类: 创建型模式 共五种:工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式. 结构型模式 共七种:适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组 ...
- C++设计模式(转)
在简书看到CharlesW同学学习设计模式的笔记,感觉很有意思(单身狗的妄想),转载下. 转载:https://www.jianshu.com/p/082662126bdd 好的软件设计是多用代码复用 ...
- 快速了解Java设计模式
文章目录 背景 设计模式分类 创建型模式 工厂方法(Factory) 抽象工厂(Factory) 原型模式(Prototype) 建造者模式(Builder) 单例模式(Singleton) 结构型模 ...
- 干货!万字设计模式面试题,再也不需要怂面试官了!
文章目录 什么是设计模式 为什么要学习设计模式 设计模式分类 设计模式的六大原则 开放封闭原则(Open Close Principle) 里氏代换原则(Liskov Substitution Pri ...
- 23种设计模式的分类和应用场景总结【设计模式】
23种设计模式的分类和应用场景总结[设计模式] 设计模式分类 创建型模式 结构型模式 行为型模式 设计模式的几种原则 应用场景总结 各种模式的详细介绍 创建型模式 设计模式分类 23种设计模式可以分为 ...
- 1.设计模式与面向对象原则
本文重点在解释什么是设计模式?什么场景下可以用这种设计模式?尝试以实际的问题来驱动学习,使得我们对设计模式的理解更为深刻而具体. 本文的内容分为三部分: 面向对象的设计原则 UML类图定义 二十四种设 ...
- 【2022最新Java面试宝典】—— 设计模式面试题(14道含答案)
目录 1.什么是设计模式 2.为什么要学习设计模式 3.设计模式分类 4.设计模式的六大原则 5.单例模式 1.什么是单例 2.那些地方用到了单例模式 3.单例优缺点 4.单例模式使用注意事项: 5. ...
- 【金三银四】设计模式面试题(2021最新版)
目录 前言 1.什么是设计模式 2.为什么要学习设计模式 3.设计模式分类 4.设计模式的六大原则 5.单例模式 5.1 什么是单例 5.2 哪些地方用到了单例模式 5.3 单例优缺点 5.4 单例模 ...
- Java程序员从笨鸟到菜鸟全部博客目录
本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.NET/csh624366188 欢迎关注微信账号:java那些事:csh624366188.每天一篇java相关的文章 大 ...
- lsof查看占用高_查看端口占用情况lsof,并关闭对应进程kill
01.LoT.UI 前后台通用框架分解系列之--小图片背景全屏显示(可自动切换背景) LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
最新文章
- SQLITE3根据需求查询回不同的数据类型简单记录
- Android: Custom View和include标签的区别
- 关于SAP的预留问题
- 冒险实施SAP HANA 农夫山泉缘何做第一个“吃螃蟹”者?
- 关于网页的一些小知识点
- Eclipse — 快速生成提示代码和快速导包
- nginx 启动失败 80端口被占用
- PHP中的ZIP压缩与解压
- 全网最详细的VMware虚拟机下载安装教程
- input框输入的文本类型都是字符串类型
- 金融反欺诈(项目练习)
- POJ 1201 Intervals(差分约束)
- linux怎么进入dos界面,如何在Linux中运行DOS应用程序
- 【C语言】实现简易扫雷(仿windows下扫雷)
- linux 追加多行文件,linux每行追加内容
- Rest Stops
- java中的odb_obd适配器的初始化
- 计算机网络 传输媒体 光缆,软考网络管理员笔记之计算机网络传输媒体
- 这本武林秘籍赶快收好
- android手机刷新率,终于知道为何苹果手机60Hz刷新率,却比大部分安卓的120Hz更强了...
热门文章
- python爬取景点数据看该去哪里玩——南京篇
- 自动控制原理8.3---相平面法
- 排名:开源免费的小程序商城源码-LaiKe
- php5中文手册 pdf_tp5.0完全开发手册
- 计算机组成原理第五版(白中英)第七章外存与I/O设备 习题
- 数据结构考研自用——动态顺序表的实现【王道/严蔚敏C语言版】
- 数据结构与计算机网络参考书,2019计算机考研:数据结构参考书及复习重点
- 3.3 以太网交换机
- Html5判断手机型号,WebView-修改userAgent用于网页端判断手机型号
- python 写字机器人_机器人股票:用 Python 自动化办公能做到哪些有趣或有用的事情?作者:陈廷聿...