当前位置:首页 > 心得体会

设计模式心得体会

时间:2024-07-20 12:33:51
设计模式心得体会[本文共7100字]

第一篇:设计模式心得体会

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

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

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

下面对各个模式再简单总结一下:

1、创建型模式:

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

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

factory method:创建单个对象,在abstract factory有使用到。

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

factory method,abstract factory, builder都需要一个额外的工厂类来负责实例化“一边对象”,而prototype则是通过原型(一个特殊的工厂类)来克隆“易变对象”。

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

2、结构性模式

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

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

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

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

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

flyweight:注重保留接口,在内部使用共享技术对对象存储进行优化(通过共享大量细粒度对象,提供系统性能)。

proxy:注重假借接口,通过增加间接代理,实现更多控制,屏蔽复杂性。

3 、行为型模式

template method:封装算法结构,定义算法骨架,支持算法子步骤变化。

strategy:注重封装算法,支持算法的变化,通过封装一系列算法,从而可以随时独立于客户替换算法。

state:注重封装与状态相关的行为,支持状态的变化,通过封装对象状态,从而在其内部状态改变时改变它的行为。

memento:注重封装对象状态变化,支持状态保存、恢复。

mediator:注重封装对象间的交互,通过封装一系列对象之间的复杂交互,使他们不需要显式相互引用,实现解耦。

chain of responsibility:注重封装对象责任,支持责任的变化,通过动态构建职责链,实现事务处理。

command:注重将请求封装为对象,支持请求的变化,通过将一组行为抽象为对象,实现行为请求者和行为实现者之间的解耦。

iterator:注重封装特定领域变化,支持集合的变化,屏蔽集合对象内部复杂结构,提供客户程序对它的透明遍历。

interpreter:注重封装特定领域变化,支持领域问题的频繁变化,将特定领域的问题表达为某种语法规则下的句子,然后构建一个解释器来解释这样的句子,从而达到解决问题的目的。

observer:注重封装对象通知,支持通信对象的变化,实现对象状态改变,通知依赖它的对象并更新。

visitor:注重封装对象操作变化,支持在运行时为类结构添加新的操作,在类层次结构中,在不改变各类的前提下定义作用于这些类实例的新的操作。

正确对待模式:

设计模式建立在对系统变化点的基础上进行,哪里有变化,哪里就应用设计模式。

设计模式应该以演化的方式来获得,系统的变化点往往是经过不断演化才能准确定位。

不能为了模式而模式,设计模式是一种软件设计的软力量,而非规范标准,不应夸大设计模式的作用。

设计模式心得体会(2):

从一开始学习设计模式至今已半年有余了,第一次接触设计模式是一次不经意间在网上看到《大话设计模式》一书,看了前言了第一章后,就感觉到其诱惑力对于一个程序员来说,是无比巨大的。大概是去年十月份的时候,部门决定成立读书会,系统学习设计模式。

通过学习设计模式,除了学习到“一些设计模式”,还让我进一步熟悉、巩固了面向对象思想,进一步熟悉了c#语言。。。我曾多次设想,我们如果引入面向对象思想,并结合设计模式来重写或改善我们的系统(必须重写,虽说设计模式只是一种思想,语言只是实现而已,但是选择一门好的语言,无疑也是非常重要的,而vb6在面向对象方面却有很大欠缺甚至不具备其条件),那么我们的系统将会像目前一样需要那么多人来维护吗?

《大话设计模式》一书其实是对gof的《设计模式——可复用面向对象软件的基础》一书的“翻译”,让人更容易理解,用通俗易懂的语言阐述软件设计过程中的一些“模式”,在某种特定环境下,用最好的设计方法(代码高内聚,低耦合,使其有良好的可扩展性和可维护性)达到我们的目的,或许其方法有很多很多,但是寻找到最好的方法却不是件容易的事,设计模式是对前人的设计经验的一个总结,告诉我们在某 ……此处隐藏2258个字……变”转化为“扩展”。你不是要另外一种

scene吗?那我重新为你设计一个sence并生成.dll交付你,然后让现有的程序去调用这个scene。当然,这时可能需要调用者稍微的发生一下变化,比如开始调用者是直接调用scene来呈现场景的,现在将其改为根据配置文件来决定要呈现那种scene。但是如果之前你已经考虑到这个问题了,那调用者是不需要发生任何变化的,因为调用者是根据配置来决定所呈现的场景,需求发生弯化,只需要改变配置文件(可能是一个xml),把调用者与新添的scene关联即可,这样一来,“改动”就变为“扩展”,其带来的好处也是显而易见的,这也就是所谓的“开闭”原则。

以上文字完全是本人理解,随着不断的学习,我想这么文章估计要被改好多次,这是一个学习的过程。理解错了、写错了都不要紧,关键是你怎么样去面对这种错误!是拒绝承认错误还是正视错误?这也是设计模式回答的问题。

第四篇:洋思模式心得体会

洋思模式心得体会

从学习杜郎口到学习洋思已经好几年了,每年每学期都要进行大规模的听课活动,可谓轰轰烈烈,但学习了好几年时间,我心中仍然一塌糊涂,一知半解,难以灵活运用,尝试着运用时,也是提襟见肘,顾此失彼。所以成功的经验很少,只能有一点粗略的感受。

我觉得目标设计尽量的要简洁明了,通俗易懂,要让绝大多数学生能够完成,如果太难或过于简单,都不利于学生的学习。目标设计应控制在1----3条为宜,如果目标太多,一节课根本无法完成,那就白设计了,从学生的角度来说,当看到很多的目标时,心中会产生恐惧和排斥情绪,不利于学习。

由于条件限制,当堂训练时只能采用课后练习和配套练习,缺少灵活性,对于在电子白板上做练习题,我总觉得效果不太好,因为一道题目看过后,印象不深,只有亲手做过,才能记忆深刻。

其它环节,我正在努力尝试、探索。

第五篇:教学模式心得体会

教学模式心得体会

近几年,我们在校领导的带领下,实施了有本校特色的四大模块,八大环节的课堂教学模式。通过我们几年来的努力专研,现在,我们都可以很流畅的把我校的教学模式运用到我们的课堂教学中了,当然,在这几年的专研中,我也有了自己的体会,现在,我就谈谈我个人的一些看法。

一、改变旧观念,接受新模式

对于一个新的事物,需要通过不断地学习去了解它,新的教学模式也是这样。这学期,学校组织我们进行了多次学习,深入了解新模式的内涵、原则及实施细则,并组织我们通过数多次的教学研讨课,让我们真正了解这种模式的操作方法。不管是讲座还是听课教研,我都积极参加,积极与同行进行研究,认识到了新模式的确有助于培养学生自主学习的能力,有助于培养学生的合作意识,有助于学生学习能力的提高,有助于切实提高课堂效率。于是,我就积极在自己的课堂上进行尝试,努力实现学生主体、教师主导的高效课堂。

二、把课堂还给学生

每节课上,我都不断地提醒自己:“要放手,还给学生更多的学习时间。学生会的,教师不讲;学生能说出来的,教师不说;学生通过谈论能解决的,就让学生讨论解决。”有了这样的意识,课上,学生活动的机会多了,学生读书的时间有了,学生合作的机会有了,学生自主学习、独立解决问题的能力提高了。课上,我只挑关键性的问题、共性问题组织教学,充分发挥激励评价的作用,让学生尽情地

展示自己。这样,学生的学习热情高涨,谁都想表现自己,谁都想得到大家的认可,学习效果有了提高。

三、把课前的准备做充分

每节课的教学,都需要教师事先的精心准备。我们的教学模式更是如此,哪怕就是指导学生怎样预习。我刚开始带的学生第一次接触预习,学生不知道该怎样下手,所以,手把手地教给方法就显得尤为重要。我为了让学生学会预习,我不怕耽误课堂时间,亲自在课堂上对学生预习的每一步进行指导,比如,我告诉学生要通过自己拼读音标来学会读单词,要通过英汉互译来熟练掌握单词。我还要亲自在课堂上指导学生如何写预习笔记,如此反复,虽然学生的预习还是不能完全放手,但是,看到相当一部分学生已经开始自主地预习下一单元时,我还是感到很欣慰,毕竟小进步也比原地踏步强。

针对这几年的英语教学,我也有点自己的看法:

一、靠持续不断的语言知识,而不是“玩”来培养学生持久的兴趣初中英语教学是要重视培养兴趣,但单靠唱歌游戏不能培养学生持久的兴趣。新鲜劲儿一过,孩子们就会厌倦。所以,唱歌游戏应该作为初中学生学习英语语言知识、技能的一些手段,而不是培养兴趣的手段。我们可以采用多种手段帮助学生在记忆力强的时期多记单词,多学习语言规则,并尽可能多创造模仿的机会,提高学生的语音和语调。在英语学习中,听、说、读、写、译五种能力是可以互补的。真正做到听说先行,读写跟上。光听说不读写,很难收到高效。只靠模仿不培养学习能力,也难减轻学习负担。所以初中学生还是应

当认真进行语言学习。

二、英语应用能力需要相应的词汇。“不学习语言规则、不掌握相当数量的词汇,英语应用能力就是空中楼阁”。目前在中学的低年级的英语教学中,不要求学生掌握词汇,而只要求学生能根据提示或图片说出该单词,其本质无非是要学生们死记硬背,鹦鹉学舌。由于学生们没有相应的读音规则训练,不熟悉词汇的拼写规则,单词的音、形、意三者不能有效的结合在一起,因而导致了单词记忆的困难,并成了中学生学英语的瓶颈。

三、中学英语教师应有发展意识一向以来,人们中学英语教师的语言知识能力要求不高,认为中学英语简单,不需要太好的语言功底,只要有良好的教学技能就可以了。其实时代在进步,社会在发展,同样英语作为人们最广泛的交际用语之一,更是随着高科技的迅猛发展而日新月异地变化着。如果我们的英语教师故步自封,不求进取,那么不但自己的语言知识很快陈旧落伍,误人子弟,而且会被时代所淘汰。“changing english in the changing world”。现代英语的变化,特别是口语方面的变化可从以下几个方面体现出来:1、随着人们生活节奏的不断加快,更因为国际互联网的形成,人们之间的交际变得越来越简捷。说话简单快捷,是现代人生活的一大特征。现代英语在这方面的变化表现为“一字多用”。2、随着现代科学技术的迅猛发展,现代英语词汇急剧增加,并且我们发现,现代英语词汇有相当一部分是取得新义的旧词,如,“input”(输入电子计算机的数据),“store”(电子计算机的储存器),“drive”(计

算机驱动器)等。3、英国英语和美国英语之间的距离越来越小。也许是美国对世界政治、经济影响日益强大的原因,美国英语的影响也越来越大,特别是对青少年的影响越来越大,他们以使用美语和发美国音为时髦。

当然,在实施新的教学模式的过程中我也有些困惑,譬如说学生由于作业量的增多而忽略了预习,导致课堂上不下去课的情况,我想,学校会为我们的教学模式的实施创造很好的条件的,相信在不久的将来,我们可以把教学模式变成我们自己的模式,

在教学上更上一层楼

《设计模式心得体会[本文共7100字].doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式