最近一段时间,粗略的查看了一下Spring源码,对Spring的两大核心和Spring的组件有了更深入的了解。同时在学习Spring源码时,得了解一些设计模式,不然阅读源码还是有一定难度的,所以一些重要的设计模式简单的做了阐述。同时还会简单的加入一些GOF中提到的设计原则。Spring的源码阅读.....
分类:
编程语言 时间:
2014-08-12 09:01:13
阅读次数:
291
基本概念
适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。
在GoF的设计模式中,对适配器模式讲了两种类型,类适配器模式和对象适配器模式。适配器模式还有一个特例,就是缺省适配模式(Default Adapter),又称接口适配模式。
1、 类适配器模式
把适配类的API转换成目标类...
分类:
其他好文 时间:
2014-08-12 00:50:43
阅读次数:
293
一、什么是单例模式单例是一种创建型模式,使用单例,可以保证一个类只生成一个实例对象。也就是说在整个程序空间内,只存在一个实例对象。GOF对单例的定义:保证一个类只有一个实例存在,同时提供对该实例加以访问的全局访问方法。二、为什么要使用单例模式在应用系统开发中,我们常常有以下需求:- 在多个线程之间,...
分类:
编程语言 时间:
2014-08-06 21:49:42
阅读次数:
325
之前学习原型模式一直以为原型模式目的是为了方便的创建相同或相似对象,用复制对象的方式替换new的方式,还研究了深克隆和浅克隆。最近仔细看了GOF的设计模式,发现原型模式的本意并不仅仅是复制对象这么简单。
创建型模式主要讲如何创建对象,通常包含何时创建,谁来创建,怎么创建等。GOF书里面写的意图是,用原型实例指定创建对象的种类,并且通过拷贝这些原型对象创建新的对象。也就是说原型模式应该理解成先指定好要创建的对象种类,也就是指定对象类型,再通过拷贝方式创建对象。...
分类:
其他好文 时间:
2014-08-06 12:00:11
阅读次数:
228
跟着ZHONGHuan学习设计模式
简单工厂
简介:
从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。...
分类:
其他好文 时间:
2014-08-05 19:35:30
阅读次数:
198
说起模式,被人提起最多的是GoF的23个模式,甚至很多人误解模式就是GoF模式,认为学习设计必须要学习GoF模式,然后拼命往自己的项目上套用。GoF模式不是最有用,也不是最本质的,只是较早归纳写在书中。后续又出了很多模式的书籍,例如POSA系列(1-5)、PLoPD系列(1-5)……,PLoP以及C...
分类:
其他好文 时间:
2014-08-05 15:25:19
阅读次数:
141
原帖:http://stackoverflow.com/questions/1673841/examples-of-gof-design-patterns
提问:我正在学习GoF的《设计模式》,想了解些它们在实际中的应用的例子。大家能给我举一些使用设计模式的好例子吗?尤其是在Java类库中。
赞同最高的回答:
你可以通过Wikipedia对设计模式有个整体上的理解。Wikipedia上也...
分类:
编程语言 时间:
2014-07-31 20:49:37
阅读次数:
427
第一部分:创建型模式
创建型模式抽象了实例化过程。它们帮助一个系统独立于如何创建、组合和表示它的那些对象。(把一些小的对象组装成大对象,这个工作由专门的类对象来做)
一个类创建型模式使用继承改变被实例化的类,而一个对象创建型模式将实例化委托给另一个对象。
随着系统演化得越来越依赖于对象复合而不是类继承,创建型模式变得更为重要。因为系统定义一个较小的行为集,这些行为可以被...
分类:
其他好文 时间:
2014-07-31 09:55:16
阅读次数:
277
元素模式(最新Jolt大奖得主彻底颠覆传统GoF设计模式的里程碑著作)【美】JasonMcC.Smith(杰森.史密斯)著高博凌杰徐平平译ISBN978-7-121-23468-22014年6月出版定价:69.00元364页16开编辑推荐本书介绍一类全新的设计模式——元素模式(ElementalDesignPattern)。元素模式植根..
分类:
其他好文 时间:
2014-07-30 17:47:25
阅读次数:
335
这个题目很奇怪,设计模式不就是指导程序员进行软件设计的么?呃,我的意思是这是与 面向“对象”的设计模式相对的。以前有看过有人写过《给妻子解释设计模式》,这种把计算机中的思想与生活相结合固然很好。人类解决问题的思想是相通的,计算机中的很多思想比如分治、递归、贪心等都能在生活中找到相似的例子。但是,不恰当的例子反而会误导人的思维,造成理解偏差。设计模式本就是类与类之间如何组织的一套软件设计经验,我们拿...
分类:
其他好文 时间:
2014-07-30 10:05:13
阅读次数:
269