设计模式
文章平均质量分 63
好刹那
这个作者很懒,什么都没留下…
展开
-
策略模式--GOF的23个之一
问题:1、 代码在多个子类中重复。2、 运行时的行为不容易改变。3、 很难知道所有鸭子的全部行为。4、 改变会牵一发动全身,造成其他鸭子不想要的改变。5、 并非所有子类都有一个行为(并非所有鸭子都能飞)。6、 开Flyalbe接口,造成代码无法复用。7、 子类对同一接口有不同的实现方式(鸭子飞行的动作可能多种变化)。原创 2014-01-05 00:54:10 · 1109 阅读 · 0 评论 -
单例模式--GOF的23个之一
选择单例模式就是为了避免不一致状态。优势:1、 单例模式的类图是所有模式的类图中最简单的。2、 单例模式让我们在任何时刻都只有一个对象。3、 单例模式可以延迟实例化。原创 2014-01-19 21:54:06 · 940 阅读 · 0 评论 -
单例模式的五种实现形式
本来单例模式的五种模式在上一票博文中已经写到,这里再次写出,一是方便需要的战友们能立即查询获取,二是告诉自己它们的重要性。五种实现方式是:经典模式、懒汉式、饿汉式、双重检查加锁、登记式。原创 2014-01-19 22:05:48 · 1023 阅读 · 0 评论 -
抽象工厂模式--GOF的23个之一
通过抽象工厂搜提供的接口,可以创建产品的家族,利用这个接口书写代码,我们的代码将从实际工厂解耦,以便在不同上下文中实现各种各样的工厂,制造出各种不同的产品。例如:不同的区域、不同的操作系统、不同的外观及操作。原创 2014-01-15 12:14:56 · 1221 阅读 · 0 评论 -
工厂方法模式与抽象工厂模式的区别
很多程序员分不清楚几个工厂模式(简单工厂模式、工厂方法模式、抽象工厂模式)。在前面的博文(工厂方法模式)中,我已经简单说明了简单工厂模式与工厂方法模式的区别,这里我简单归纳说明一下工厂方法模式与抽象工厂模式的区别。这是我理解玩抽象工厂模式后的笔记。原创 2014-01-15 12:25:11 · 2431 阅读 · 0 评论 -
工厂方法模式--GOF的23个之一
原本是由一个对象负责所有具体类的实例化,改为一群子类来负责实例化。 优点:工厂方法模式帮助我们将产品的“实现”从“使用”中解耦。缺点:利用字符串传入参数化的类型,很危险。原创 2014-01-14 20:59:32 · 950 阅读 · 0 评论 -
简单工厂模式--不是GOF的23个的模式
简单工厂模式其实不是设计模式,反而是比较像是一种编程习惯。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。原创 2014-01-14 15:33:34 · 1147 阅读 · 1 评论 -
装饰者模式—GOF的23个之一
1、继承属于扩展形式之一,但不见得是达到弹性设计的最佳方式。2、在我们的设计中,应该允许行为可以被扩展,而无须修改现有的代码。3、组合和委托可用于在运行时动态地加上新的行为。原创 2014-01-07 20:41:41 · 896 阅读 · 0 评论 -
观察者模式—GOF的23个之一
认识观察者模式(资料)我们看看报纸和杂志的订阅是怎么回事:1、 报社的业务就是出版报纸。2、向某家报社订阅报纸,只要他们有新报纸出版,就会给你送来。只要你是他们的订户,你就会一直收到新报纸。3、当你不想再看报纸的时候,取消订阅,他们就不会再送新报纸来。4、只要报社还在运营,就会一直有人(或单位)向他们订阅报纸或取消订阅报纸。原创 2014-01-05 18:25:56 · 975 阅读 · 0 评论 -
回顾工厂模式学习相关要点
本来这部分内容要想放到上一篇博文,不过想到单独提取出来,或许更能展现它的作用。在历时几天对几个工厂模式的攻伐当中,简单归纳了下面的知识点,希望对同阶段的朋友有所帮助。当然,也是自己以后参照理解的中重要笔记。原创 2014-01-15 12:30:48 · 892 阅读 · 0 评论