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