这本书是软件研发领域重要的里程碑,合著此书的四位作者 Erich Gamma,Richard Helm,Ralph Johnson ,John Vlissides 被业内称为GoF(Gang of Four),因此这本书也被人称为GoF设计模式。

1.创建型模式

这一类设计模式的目的是用于创建对象。

2.结构型模式

这一类设计模式的目的是优化不同类、对象、接口之间的结构关系。

3.行为型模式

这一类设计模式的目的是更好地实现类与类之间的交互以及算法的执行。

每一个类型所包含的具体设计模式,总结在下图当中:

至于这些模式具体是什么样子?用在哪些场景?大家今天先不必深究,我们日后会逐一详细讲解。

做过Web开发,或是桌面应用开发的小伙伴,对MVC模式和MVVM模式恐怕不会陌生:

目前,我们已经讲了其中的3种设计模式,大家可以点击下面链接查看:

单例模式

策略模式

观察者模式

今后,小灰会努力补全这块宏大的拼图,讲解剩下的那20多种设计模式,敬请期待!

喜欢本文的朋友们,欢迎长按下图关注公众号程序员小灰,收看更多精彩内容

给个[在看],是对小灰最大的支持!

漫话:什么是 “设计模式” ?相关推荐

  1. 漫话:如何给女朋友解释什么是适配器模式?

    本文经授权转载自微信公众号:漫话编程 周末窝在家里面打王者荣耀,女朋友在旁边玩我的电脑,我嫌她播放的综艺节目声音比较大,于是建议她戴耳机. 适配器模式 Adapter Pattern,通常被翻译成适配 ...

  2. 软件设计模式从何而来?------“抄袭来的” 设计模式

    博主:爱码叔 个人博客站点: icodebook 公众号:漫话软件设计 专注于软件设计与架构.技术管理.擅长用通俗易懂的语言讲解技术.对技术管理工作有自己的一定见解.文章会第一时间首发在个站上,欢迎大 ...

  3. 微服务架构最重要的 10 个设计模式!

    软件设计模式是解决软件设计中常见问题的通用.可复用的解决方案.设计模式让我们可以分享通用词汇并使用经实战检验的方案,以免重复造轮子.现在,我将介绍一系列设计模式来实现这些最佳实践. 微服务架构的设计模 ...

  4. 盘点 Spring Security 框架中的八大经典设计模式

    上次有小伙伴建议,源码分析太枯燥了,要是能够结合设计模式一起来,这样更有助于大家理解 Spring Security 源码,同时还能复习一波设计模式. 因此松哥今天就试着整一篇,和大家来聊一聊 Spr ...

  5. 设计模式-策略模式替换if else

    设计模式-刚来的大神彻底干掉了代码中的if else- 转载声明 本文大量内容系转载自以下文章,有删改,并参考其他文档资料加入了一些内容: 刚来的大神彻底干掉了代码中的if else- 作者:漫话编程 ...

  6. 【Design pattern】设计模式思路总结(一)

    看了一周的设计模式,跟着小菜的思路走! 从简单工厂过渡策略,后面看的这几个模式都是在单一职责,开放--封闭原则,依赖倒转原则下不断的改进,采用模式写出的代码更容易扩展,维护! 比较容易懂. 装饰模式: ...

  7. GOF23设计模式(结构型模式)代理模式~

    代理模式应用场景十分广泛,随便一个框架都会用到,因此学好代理模式对后续框架学习是最基本的要素!!今天我们就来讲讲代理模式! 目录 1.简介 1. 核心作用 2. 角色分析 2. 应用场景 4. 分类 ...

  8. GOF23设计模式(创建型模式)工厂模式

    目录: 一:工厂模式的核心本质 二:关于面向对象的六大基本原则 三:工厂模式的三大类详解(代码示例,详细分析) 首先,上咱本GOF23所有工厂模式的分类表格!!! 创建型模式 单例模式.工厂模式.抽象 ...

  9. GOF23设计模式(创建型模式)单例模式

    目录: 一:单例模式的核心作用.常见应用场景 二:五种单例模式及其实现 三:关于反射和反序列化破解单例模式的漏洞,以及相应的解决方案 四:测试五种单例模式的效率 一:核心作用及常见应用场景: 核心作用 ...

最新文章

  1. 要想成功 需要了解的东西
  2. ldap客户端工具_什么是性能测试?性能测试主流工具有哪些?
  3. Linux C SQLite3 编程
  4. C++之stdafx.h的用法说明
  5. Resin 优化配置
  6. 微服务的概念——《微服务设计》读书笔记
  7. 3.2. 添加模板版本(Core Data 应用程序实践指南)
  8. 如何隐藏电脑下方工具栏个别图标_最酷!最帅!最拽!这就是你想要的样子!工具栏美化终极篇...
  9. dw创建站点本地服务器,在Dreamweaver建立本地虚拟机站点
  10. 此 Windows 副本不是正版的解决方案
  11. 题目66:矩阵中的路径
  12. leetcode[206]翻转链表/reverse linked list 链表经典面试题目
  13. 【node.js】报错Cannot mix different versions of joi schemas解决方法
  14. 【云周刊】第121期:图管够!灌篮高手、女儿国…阿里日,这帮程序员太会玩了!...
  15. Invalid use of SingleClientConnManager: connection still allocated解决方案
  16. 我给自己定了个目标,我要看完这95本书
  17. 动手实现对外安全的接口(写于天寒地冻的正月初九)
  18. 模拟机械键盘音效的软件
  19. 年底到了,消费者纷纷抢购,特斯拉成为汽车市场的超级网红
  20. Java压缩文件和文件夹为zip格式

热门文章

  1. 修复DNS引起的网络问题
  2. 互联网金融基础知识--数字货币
  3. 一个大电容和一个小电容并联 ?
  4. H5页面使用微信网页授权实现登录认证
  5. android 阅后即焚 防止截屏
  6. 从2021年财报看京东的新型实体势能
  7. oracle多实例,ora-01078 lrm-00110启动数据库错误
  8. Windows 10无法扫描到电脑文件夹的解决办法
  9. 微信支付接口调用记录
  10. jsp实现jsp动态生成元素的效果