设计模式心得体会 下载本文

内容发布更新时间 : 2024/6/24 21:05:58星期一 下面是文章的全部内容请认真阅读。

设计模式心得体会

第一篇:设计模式

7月初的一个周末,准确的说应该是7月1号周六,在网上看到一本《大话设计模式》的书,而且看到很多很好的评论,于是乎,下载了电子书看看,一下子看了几章之后,对设计模式有了个了解,于是继续上网搜些其他资料,进一步了解设计模式。。。最终结论:设计模式是个好东西,具体怎么好,一两句话是无法概括的,也是从那天起,我就决定学习设计模式,于是就看《大话设计模式》,至七月十多号,大概看了一百多页后,感觉有点难,有点看不下去的感觉,于是上网找其他的好方法,无意间发现了李建忠老师的《c#设计模式纵横谈》系列讲座,微软的webcast课程,主要讲解gof的xx个设计模式,每个一讲,加上一头一尾,共xx讲,试听了一节课后,感觉很有用,于是就抽时间去边听课边看书,并在我的博客里写下笔记,依赖加深印象,二来可以督促我的进度。。。

三个月以来,总算把设计模式学完一遍了,原计划是两个月学完(一星期三个模式),由于。。。计划两个月学完实际花了三个月,感触多多,收获多多——对c#语言有了更进一步的认识,对oo的思想有了更全面的了解。。。

下一步在设计模式方面的计划:巩固并运用设计模式,巩固:把《大话设计模式》,《设计模式》,《设计模式——可复用的面向对象基础》,《敏捷软件开发:原则、模式与实践》这些书再结合起来系统的看一看,当然还会去买一些我手头上没有的关于设计模式的书;运用:部门前几天也提倡用c#来改版vb程序,我想这是一个很好的平台,正好有机会把理论的东西在实际中应用,理论加实际——唯一的学习方法。。。

下面对各个模式再简单总结一下: 1、创建型模式:

singleton:解决的是实例化对象的个数的问题,比如抽象工厂中的工厂、对象池等,除了singleton之外,其他创建型模式解决的都是new所带来的耦合关系。

abstractfactory:创建一系列相互依赖对象,并能在运行时改变系列。

factorymethod:创建单个对象,在abstractfactory有使用到。

prototype:通过拷贝原型来创建新的对象。

factorymethod,abstractfactory,builder都需要一个额外的

工厂类来负责实例化一边对象,而prototype则是通过原型(一个特殊的工厂类)来克隆易变对象。

如果遇到易变类,起初的设计通常从factorymethod开始,当遇到更多的复杂变化时,再考虑重构为其他三种工厂模式(factorymethod,abstractfactory,builder)。

2、结构性模式

adapter:注重转换接口,将不吻合的接口适配对象,用于旧代码复用、类库迁移等。

bridge:注重实现抽象和实现的分离,支持对象多维度的变化。

composite:注重同意接口,将一对多的关系转化为一对一的关系,屏蔽对象容器内部实现结构,实现对象和对象容器使用的一致性。

decorator:注重稳定接口,在此前提下为对象扩展功能,实现对象功能的扩展,避免子类膨胀。

facade:注重简化接口,屏蔽各子系统的复杂性,提供更高层接口供客户访问。

flyweight:注重保留接口,在内部使用共享技术对对象存