
设计模式
文章平均质量分 84
_suzhou
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
设计模式(1) 创建型模式和抽象工厂(Abstract Factory)
问题聚焦:分别用一句话概括这节的几个知识点1 什么是创建型模式:抽象了实例化过程2 创建型模式有哪些:抽象工厂,工厂方法,原型模式,生成器模式3 什么是抽象工厂(AbstractFactory)模式:与接口交互,获得一系列相关或互相依赖的对象实例。原创 2014-01-03 09:48:49 · 1982 阅读 · 0 评论 -
设计模式(14) 命令模式(Command)C++实现
问题聚焦: 感觉后面的一些模式都比较抽象,每个模式都尽量写一个demo辅助理解。 命令行模式主要是将请求本身封装为对象,从而使你可用不同的请求参数化客户类。 解耦了调用操作的对象和具有执行该操作所需信息的那个对象原创 2014-03-11 19:41:20 · 2612 阅读 · 0 评论 -
设计模式(7) 桥接模式(BRIDGE)
问题聚焦: 上一节讲了对象结构型模式,其主要的思想是对象的组合。并接触了一个典型的适配器模式。 这一节再讲一个常用的桥接模式,其主要的思想是抽象部分与实现部分的分离,使得抽象部分与系统平台分离开来,从而实现可移植性。 桥接主要指抽象部分和实现部分之间的关系。原创 2014-02-02 23:37:25 · 1499 阅读 · 0 评论 -
设计模式(13) 对象行为型模式和职责链模式
问题聚焦: 行为模式,将你的注意力从控制流转移到对象间的联系通信方式上来。 本节所介绍的职责链,是典型的松耦合设计模式。 职责链模式可以相应多个请求接受者,选择其中最合适的处理者。原创 2014-02-14 10:26:50 · 1662 阅读 · 0 评论 -
设计模式(12) 代理模式(PROXY)
问题聚焦: 这个模式是对象结构型模式的最后一个。学习完就可以进入下一种类型的模式了。 代理模式的主要目的:控制对某个对象的访问(如通过拒绝某些访问实现访问权限的控制,或进行加载等耗时操作的优化)。原创 2014-02-10 08:51:10 · 1558 阅读 · 0 评论 -
设计模式(10) 外观模式(FACADE)
问题聚焦: 设计一个系统时,比较常见的做法是将它划分为若干个小的系统,互相协作,组成一个大的系统。 那么,在设计这些小系统时,需要注意一些什么呢? 外观模式为什么可以让子系统更加容易的使用呢?(最小化子系统之间的通信和相互依赖关系,即降低耦合度)原创 2014-02-07 18:03:30 · 1416 阅读 · 0 评论 -
设计模式(11) 享元模式(FLYWEIGHT)
问题关注: 如果让我们设计一款文字编辑器,面向对象的设计方式肯定是首选。 一种可能的设计方式是,将文档中的每个字符,每行,每列都认为是一个对象,提高程序的灵活性的同时,可以想象,将会耗费大量内存。 享元模式,就是为了应对这种情况——共享对象,细粒度处理而无需高昂的代价。原创 2014-02-08 15:20:39 · 1371 阅读 · 0 评论 -
设计模式(9) 装饰器模式(DECORATOR)
问题聚焦: 有时候,希望某个类增加新功能的时候,往往会生成一个子类。 但是,这种方式有时候略显臃肿,其次,这种方法是静态的,不够灵活。 因此,针对这种给对象动态添加功能的需求,大牛们给出了本节的装饰器模式。原创 2014-02-04 13:51:47 · 1587 阅读 · 0 评论 -
设计模式(8) 组合模式(COMPOSITE)
问题聚焦: 结构型模式的本质是:对象组合。 而本节所展示的模式,就是典型的结构型模式。 那对象组合成什么结构呢?组合模式主要将对象组合成树形结构,表示”部分-整体“的层次结构。原创 2014-02-04 01:16:49 · 2522 阅读 · 2 评论 -
设计模式(6) 结构型模式和适配器模式(ADAPTER)
问题聚焦:结构型模式:对象组合适配器模式:使得原本由于接口不兼容而不能一起工作的那些类可以一起工作原创 2014-01-20 09:26:43 · 1446 阅读 · 0 评论 -
设计模式(5) 单例模式(SINGLETON)
问题聚焦:让类自身负责保存它的唯一实例,并且保证没有其他实例可以被创建。单例模式使用起来比较简单,但是当单例类有子类并且数目不定时,需要用一个注册表管理它,这一部分讲的不清楚,以后补充。原创 2014-01-09 16:18:34 · 1474 阅读 · 0 评论 -
设计模式(4) 原型模式(Prototype)
问题聚焦:个人理解: 原型模式就是一个山寨工厂对某几个产品高仿几乎成真的批量生产过程。原创 2014-01-08 13:23:59 · 1173 阅读 · 0 评论 -
设计模式(3) 工厂方法(Factory Mehod)
问题聚焦:工厂方法与抽象工厂的区别别名:虚构造器(Virtual Constructor)原创 2014-01-06 18:59:07 · 1525 阅读 · 0 评论 -
设计模式(2) 生成器模式(BUILDER)
问题聚焦: 生成器模式是对象创建型模式的一种 它将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。原创 2014-01-04 22:53:24 · 1645 阅读 · 0 评论 -
设计模式(15) 迭代器模式(Iterator)C++实现
问题聚焦: 当我们在KTV唱歌的时候,会使用控制系统进行切歌、选中、删除、插到队首等功能,而这是我们无需知道歌曲在曲库中是如何存放的。 这便是迭代器模式的思想:提供一种方法访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。 对于迭代器我们并不陌生,C++标准库中的容器都提供了迭代器访问模式。当我们自定义某些聚合型类提供给客户使用的时候,并不希望暴露对象内部的构造原创 2014-03-14 13:15:49 · 3272 阅读 · 0 评论