![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式学习
xb_workspace
这个作者很懒,什么都没留下…
展开
-
设计模式学习笔记一------观察者模式
本文的结构如下:什么是观察者模式 为什么要用该模式 模式的结构 代码示例 推模型和拉模型 优点和缺点 适用环境 模式应用 总结一、什么是观察者模式观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。观察者模式又叫做发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器...转载 2018-09-20 11:30:35 · 112 阅读 · 0 评论 -
设计模式学习笔记十一------迭代器模式
目录本文的结构如下:引言 什么是迭代器模式 模式的结构 典型代码 代码示例 优点和缺点 适用环境 模式应用一、引言在平时生活中,可能有这样的场景,一天的高强度敲代码特别疲累,下班后又在十字路口堵了大半天,好不容易回到家中,啥也不想干,就往沙发上一躺,拿起遥控器,打开电视,选了一个爱看的频道,哇,全是美女,好吧,可惜太累了,居然睡着了。这里的电视就是一个存放频道的容器...转载 2018-09-26 11:05:25 · 203 阅读 · 0 评论 -
设计模式学习笔记十------模板方法模式
目录本文的结构如下:引言 什么是模板方法模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用一、引言读初中的时候,家里没有电脑(话说现在老家也没有电脑),父母又不让玩手机,接触比较多的电子产品就是MP4了,白天可以用来听听歌,晚上躲在被窝里偷偷看小说。但那时MP4又不具备联网下载功能,小说看完了,某个明星出新歌了,就愉快跑到网吧下载,顺便也能玩会游戏,看会视频啥的,...转载 2018-09-26 10:54:20 · 86 阅读 · 0 评论 -
设计模式学习笔记九------外观模式
目录本文的结构如下:什么是外观模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 模式扩展 补充一、前言话说某天空气质量回到秦汉,月色如水倾泻,温度适宜,微风袭人,我在院子树下架起圆木桌,摆上雕花凳,桌上依次摆放红烧肘子,烧牛肉,剁椒鱼头,烤羊排,炸猛男……美人在怀,饮一口小酒,复又夹起一块牛肉放入口中,这滋味,岂不快哉?快你个头啊,赶紧起来给我码代码。...转载 2018-09-26 10:48:33 · 122 阅读 · 0 评论 -
设计模式学习笔记八------适配器模式
目录本文的结构如下:什么是适配器模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 模式扩展 总结一、前言适配器其实在我们的生活中是非常常见的,比如说,有的国家的插座都是三孔的,而我们的手机大部分都是两孔的,是没办法直接把充电器插到插座上,这时我们可以使用一个适配器,适配器本身是三孔的,它可以直接插到三孔的插头上,适配器本身可以提供一个两孔的...转载 2018-09-26 10:39:31 · 162 阅读 · 0 评论 -
设计模式学习笔记七------命令模式
目录本文的结构如下:什么是命令模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 总结一、前言在软件设计中,经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请求发送者与请求接收者消除彼此之间的耦合,让对象之间的调用关系更加灵...转载 2018-09-20 11:52:19 · 155 阅读 · 0 评论 -
设计模式学习笔记六------单例模式
目录本文的结构如下:什么是单例模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 总结一、前言对于系统中的某些类来说,只有一个实例很重要,例如,Windows任务管理器。通常情况下,无论我们启动任务管理多少次,Windows系统始终只能弹出一个任务管理器窗口,也就是说在一个Windows系统中,任务管理器存在唯一性。为什么要这样设计呢?其一...转载 2018-09-20 11:48:19 · 110 阅读 · 0 评论 -
设计模式学习笔记五------抽象工厂模式
设计原则:要依赖抽象,不要依赖具体类目录本文的结构如下:什么是抽象工厂模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 模式扩展 总结一、前言工厂方法模式通过引入工厂等级结构,解决了简单工厂模式中工厂类职责太重的问题,但由于工厂方法模式中的每个工厂只生产一类产品,可能会导致系统中存在大量的工厂类,势必会增加系统的开销。此时,我们可以...转载 2018-09-20 11:46:09 · 135 阅读 · 0 评论 -
设计模式学习笔记四------工厂方法模式
设计原则:要依赖抽象,不要依赖具体类目录本文的结构如下:什么是工厂方法模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 模式扩展 总结一、前言简单工厂模式虽然简单,但存在一个很严重的问题。当系统中需要引入新产品时,由于静态工厂方法通过所传入参数的不同来创建不同的产品,这必定要修改工厂类的源代码,将违背“开闭原则”,如何实现增加新产品...转载 2018-09-20 11:43:55 · 122 阅读 · 0 评论 -
设计模式学习笔记三------简单工厂模式
设计原则:要依赖抽象,不要依赖具体类目录本文的结构如下:什么是简单工厂模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 模式应用 总结一、前言工厂模式是一个比较复杂的模式,可以分为三类:简单工厂模式 工厂方法模式 抽象工厂模式准确说,简单工厂模式并不属于GoF 23种设计模式,但在软件开发中应用较为频繁,通常将它作为学习其他工厂模式的...转载 2018-09-20 11:37:55 · 171 阅读 · 0 评论 -
设计模式学习笔记二------装饰者模式
设计原则:少用继承,多用组合 类应该对扩展开放,对修改关闭目录本文的结构如下:什么是装饰者模式 为什么要用该模式 模式的结构 代码示例 优点和缺点 适用环境 总结一、什么是装饰模式装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。和代理模式很相似,但在对被装饰的对象的控制程度是不同的;装饰者模式是对对象功能的加强,而代理模式是...转载 2018-09-20 11:35:12 · 169 阅读 · 0 评论 -
设计模式学习笔记十二------组合模式
目录本文的结构如下:引言 什么是组合模式 模式的结构 典型代码 代码示例 优点和缺点 适用环境 模式应用一、引言树形结构是很常见的,比如目录系统,随便点开一个文件夹,文件夹下面可能有文件,也有子文件夹,子文件夹中还有子子文件夹和文件……还有导航中的菜单。还有公司的部门构造等,展开来看都是树形的结构。这些树形结构在面向对象的世界中一般是用组合模式来处理...转载 2018-09-26 11:24:13 · 144 阅读 · 0 评论