设计模式
文章平均质量分 61
shanchao
这个作者很懒,什么都没留下…
展开
-
《Java与模式》学习笔记:设计模式——原则
最近借了本阎博士的 Java与模式 开始学习设计模式。本人在设计模式方式纯属菜鸟,所以如果对某些模式的理解有偏差,还请大家及时指正。另外,本系列(《Java与模式》学习笔记)文章中许多语句都是来自原书,由于太多,基本没有注明出处,如果阎博士认为有侵权行为,也别来找我,我只是小角色。^_^这些软件设计的基本原则是一种高度地抽象,如果说设计模式是软件设计中经验教训的总结,那么这些基本原则就是对设计原创 2007-08-28 15:48:00 · 802 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——迭代子(Iterator)模式
迭代子(Iterator)模式迭代子模式又叫游标模式,是对象的行为模式。1.定义:提供遍历一个聚集的方法接口,而不需要了解聚集的内部结构(说白了就是为不同的聚集提供相同的遍历方式,使得客户端只需要关注迭代接口,而不需要关注所迭代的聚集的具体结构。)2.为什么需要Iterator 迭代子相当于在客户端和聚集之间加了一层,这样一来,迭代子就可以缓冲客户端或聚集的变化。使得聚集的变化对原创 2007-08-30 16:54:00 · 1110 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——模板(Template)模式
模板(Template)模式模板模式是类的行为模式。1.定义:定义一个操作中算法的骨架(或称为顶级逻辑),将一些步骤(或称为基本方法)的执行延迟到其子类中.2.模板模式与继承 模板方法估计恰当地使用继承。此模式可以用来改写一些拥有相同功能的相关的类,将可复用的一般性行为代码移到基类里面,而把特殊化的行为代码移到子类里面。熟悉摸班方法模式是重新学习继承的开始。3.模板模式中的方原创 2007-08-30 16:57:00 · 1493 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——树结构(合成模式+模板模式)
这是一次合成模式+模板模式的尝试这是一个树结构的设计。该组件只注重设计一个可扩展的树结构,并不提供创建树和遍历树的方式。用户可以针对这个树结构自己写实现。该组件使用了合成模式+模板模式来设计。树的结构是根据透明的合成模式来设计的,这样使得客户端可以把树叶和树枝对象当成同一类对象处理。而树叶、树枝的抽象和具体实现之间的关系是通过模板模式来设计的,这样使得客户端可以很简单地将结点的具体对象置换原创 2007-08-30 16:59:00 · 1020 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——合成(Composite)模式
合成模式合成(Composite)模式属于对象的结构模式。1.定义:合成模式将对象组织到树结构中,可以用来描述整体和部分的关系。合成模式可以使客户端将单纯的元素和复合的元素同等看待。注意:就如阎博士书中所说,用文件系统来理解合成模式是个很好的方式。2.两种实现1)透明式:子结点集合的管理方法在抽象类或接口中定义,向客户端隐藏树叶结点和树枝结点的区别。缺点:虽然树枝对象还是树叶对象在客户端看来是原创 2007-08-30 16:55:00 · 1088 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——抽象工厂模式
抽象工厂模式抽象工厂模式是对象的创建模式1.产品族和产品层次的概念这两个概念的区别用文字确实比较难以描述,但是又是两个十分重要的概念,这关系到抽象工厂的方法应该如何申明。建议参考阎博士的《Java与模式--抽象工厂模式》2.什么情况下应该使用抽象工厂1)一个系统不应当以来于产品类实例如何被创建、组合和表达细节,这对于所有形态的工厂模式是重要的。2)这个系统的产品有多于一个的产品族,而系统只消费原创 2007-08-30 16:56:00 · 992 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——代理(Proxy)模式
代理模式是对象的结构模式。(JDK已经对动态代理提供了很好的支持)1.定义:代理模式是给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。2.代理模式的两个作用: 1)增强被代理对象的功能(为代码增加前后置操作) 2)对被代理对象施加控制(如Filter)3.代理的种类 1)远程(Remote)代理 2)虚拟(Virtual)代理 3)Copy-on-Write代理 4)保护原创 2007-09-03 16:06:00 · 844 阅读 · 0 评论 -
《Java与模式》学习笔记:设计模式——适配器(Adapter)模式
1.定义:把一个类的接口变成客户端所期望的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。2.两种适配器模式 1)类的适配器模式 2)对象的适配器模式注意:这两种适配器模式的区别我还不是很明白。但是个人认为对象的适配器模式好像比较好用。3.缺省适配器模式 1)用处:适配器模式是为了改变接口,而缺省适配器模式则是为了方便建立一个不平庸的适配器类而提供一种平庸实现。原创 2007-09-03 16:07:00 · 701 阅读 · 0 评论