没有总结的学习不算学习,这一个月的学习可谓收获多多啊,接下来与大家分享一下。
一、设计模式的分类
总体来说设计模式分为三大类:
1.创建型模式,共五种。
2.结构型模式,共七种。
3.行为型模式,共十一种。
首先研究创建型模式
二. 概述
创建型模式,就是用来创建对象的模式,抽象了实例化的过程。它帮助一个系统独
立于如何创建、组合和表示它的那些对象。
三. 为什么需...
分类:
其他好文 时间:
2014-06-11 06:55:02
阅读次数:
299
设计模式之组合模式(Composite)摘录!...
分类:
其他好文 时间:
2014-06-11 06:53:45
阅读次数:
268
代理模式(Proxy)一、 什么是代理模式先来看看官方的说法,代理模式就是为其他对象提供一种代理,以控制对这个对象的访问。 看来这个官方的说法的确有点官方,看了还是让人感觉不点不知所措,还是不明白代理模式是什么,究竟是用来做什么的。 其实代理这个名词,对于我们来说其实并不陌生,生活中有很多关于代理的例子。例如校园代理等,就以校园代理来讲,这个校园代理就是为他对应的上司的作代理,而这个校园代理的...
分类:
移动开发 时间:
2014-06-11 00:26:43
阅读次数:
306
中介者模式:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示的相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。简单描述:1个抽象Colleague,其派生多个具体ConcreteColleague,每个具体ConcreteColleague都认识一个具体中介者。他们发送消...
分类:
编程语言 时间:
2014-06-10 00:55:22
阅读次数:
390
本系列主要记录设计模式的意图是什么,它要解决一个什么问题,什么时候可以使用它;它是怎样解决的,掌握它的结构图,记住它的关键代码;可以想到至少两个它的应用实例,一个生活中的,一个软件中的;这个模式的优缺点是什么,其有哪些使用场景,在使用时要注意什么。尊重作者,转载请注明晔阳的Bloghttp://bl...
分类:
其他好文 时间:
2014-06-09 18:57:13
阅读次数:
174
迭代器模式:提供一个方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示简单描述:提供一个单独的接口遍历聚集类对象中的成员,以实现聚集对象的隐藏和内部数据供外部访问大话设计模式中的截图:我觉得以上面的图示进行编码会暴露ConcreteAggregate中的内部信息(ConcreteIera...
分类:
编程语言 时间:
2014-06-09 15:28:57
阅读次数:
314
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。简单描述:构造函数设置为private,以禁止外部类实现本类。本类中提供一个静态方法返回一个本例对象(注意多线程中的实现)大话设计模式中的截图:代码例子:Singleton类:
1 package com.longsheng.singl...
分类:
编程语言 时间:
2014-06-09 15:07:30
阅读次数:
376
合成/聚合复用原则:尽量使用合成/聚合,尽量不要使用类继承。桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立变化。解释:即一个系统可以有多种分类实现,把没种分类独立出来,让他们可以独自变化,减少他们之间的耦合。简单描述:1个Abstraction类,持有一个Implementor的引用,其方...
分类:
编程语言 时间:
2014-06-09 14:04:43
阅读次数:
328
命令模式:将一个请求封装成一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日记,以及支持可撤销的操作。简单描述:1个Receiver,知道如何执行命令。1个抽象命令,持有一个Receiver的引用,命令的执行则调用Receiver的对应方法(具体命令具体调用相应的方法)。1个I...
分类:
编程语言 时间:
2014-06-09 13:15:24
阅读次数:
363
行为类模式包括责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法、访问者模式,我去,好多。。。下面主要挑选几个比较容易混淆且比较重要的模式进行对比说明。一、命令模式VS策略模式1、关注点不同策略模式关注的是算法替换的问题:一个新的算法投产,...
分类:
其他好文 时间:
2014-06-09 13:01:50
阅读次数:
236