第一篇:设计模式心得体会
7月初的一个周末,准确的说应该是7月1号周六,在网上看到一本《大话设计模式》的书,而且看到很多很好的评论,于是乎,下载了电子书看看,一下子看了几章之后,对设计模式有了个了解,于是继续上网搜些其他资料,进一步了解设计模式。。。最终结论:设计模式是个好东西,具体怎么好,一两句话是无法概括的,也是从那天起,我就决定学习设计模式,于是就看《大话设计模式》,至七月十多号,大概看了一百多页后,感觉有点难,有点看不下去的感觉,于是上网找其他的好方法,无意间发现了李建忠老师的《c#设计模式纵横谈》系列讲座,微软的www.bsmz.netdash;—提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类,咋一看,太抽象了,说个例子,在三层架构中,bll层对dal层的调用会直接用到dal层中的类,如果dal层是分别对sql server,oracle的访问,bll层需要根据实际情况决定实例化哪一个dal层中的类,我们又希望在两种dal层切换时,bll层和ui层都不做改变,那么可在bll层和dal层中增加接口层(体现了“抽象”的精神,或者说是“面向接口编程”的最佳体现)和抽象工厂(dalfactroy),让它来实例化dal层中的实例;5. singleton——确保一个类仅有一个实例,并提供一个访问它的全局访问点,如单件窗体,点一下menu,弹出一个窗体(实例),在关闭这个新窗体之前,再次点击该menu,不会再次出现同样的弹出窗体(实例)。。。篇幅有限,其他模式或多或少都有点感觉。
最后,引用《设计模式解析》书中的一句话:设计模式体现的是一种思想,而思想是指导行为的一切,理解和掌握了设计模式,并不是说记住了23种(或更多)设计场景和解决策略(实际上这也是很重要的一笔财富),实际接受的是一种思想的熏陶和洗礼,等这种思想融入到了你的思想中后,你就会不自觉地使用这种思想去进行你的设计和开发,这一切才是最重要的。
第二篇:设计模式初学心得
以前没有接触过设计模式,那其实也是因为以前没有真正经历过面向对象的设计。这样的情况在我经历了本科毕业设计,并且遵循我们实验室的一位师兄的建议看了《设计模式精解》([美]alan shal(转载请注明来源:www.bsmz.netp; james r.trott 著,熊节 译)后有了根本的改变,我开始意识到一个程序员和一个设计者的区别,我也开始意识到在同学眼中“编程很强”的我只是——至少现在只是一个程序员。
我做的本科毕设是基于java-swing设计一个类似绘图程序的系统,最终我设计出来的程序,在别人看来很不错。但是只有我自己知道,我的设计其实是糟糕了,最明显的就是低内聚、紧耦合,那些代码甚至连我都不愿意去维护。于是当我看到书中的一句话:“几乎百分之百的软件都不是由它最初的设计者去维护的??”,更让我感到这次设计的失败(就连它的设计者都不原意去维护)。
《设计模式精解》的出现可以说让我眼前一亮,这也是第一本让我想再读一次的书(即使现在我还没有读完)。究竟什么是模式?书中的解释是“模式是针对特定场景下的特定问题的可重复、可表达的解决方案”,除此之外模式还必须有三个要点:
1.可重复性。解决方案应该对应于外部的场景。
2.可传授性。一个解决方案应该可以移植到问题的不同情况中(绝大多数模式的可传授性都建立在“约束”和“效果”的基础上)。
3.用来表示这个模式的名称。
模式不限于面向对象,不限于设计阶段,甚至不限于软件开发领域。设计模式只是模式的一个子集。
在前言中作者说在他对现有的设计模式的指导原则及策略都非常清楚之后,这些原则帮助他决定开始过一种为人解惑的生活??虽然我第一次看到“为人解惑的生活”这个词语,但是我立刻感到这也是我所向往的一种生活。
书中介绍了软件开发过程中的三个不同视角:
1.概念视角。这个视角“展现了问题领域中的概念??一个概念模型可以在对实现软件有很少或毫无注意的情况下画出??”
2.规格视角。“只看软件的接口,而不看实现”
3.实现视角。就是现在的我唯一使用的视角——置身于代码之中。
看到这里我更加肯定了这本所讲的是我从来没有注意过的东西,但是我对这些东西应该非常感兴趣,而我也深深地感慨:我为什么现在才看到这本书。
在书中作者回顾了它从前的一个设计,通过不断修改得出的优秀设计,逐步展现出设计模式的强大威力。书中有句话很经典——如果你只有一把锤子,那你会发现所有的东西都像钉子。意思是说如果你只知道一种解决问题的办法,那你只会想用这个方法解决所有问题。我觉得这很像现在的我,在面向对象的设计中我几乎只会“类继承”,结果是我的毕设——过高的继承体系导致紧耦合、低内聚。
当我学到书中介绍的第一个设计模式:facade模式,我立刻对这些设计模式产生了浓厚的兴趣,我发现自己像一个“完美主义者”,在试图追求结构完美的程序代码(可读性好、易于维护),而设计模式给我提供了这样的可能,尽管我仅仅看到了它的一点点部分。设计模式就像一个漂亮的女孩,而且你知道她不仅外表很漂亮,也很有内涵,那你想做的事情还有什么呢?当然是尽快接近并了解她??
第三篇:设计模式之心得
刚学几天就有一些浅薄的心得了。
在学过的几种设计模式中(目前为止,本人只学过创建性模式),每一种设计模式都会有一种具体的应用场景,每一种场景描述的都是一种需求变化。设计模式就是用来解决这些变化的。
只要客户有新的需求,你的程序就要发生改变,不管你用什么方法,这个改变是避免不了的。关键是你如何是解决这种变化!设计模式就是寻求一种通用的较好的方法来解决这种变化而不是避免这种变化,并不是你应用了设计模式,你的系统就不会发生变化了。
面向对象的编程有三大机制,我个人认为,设计模式很好的利用了其中的“封装与多态”(当然并不是所有的设计模式都是这样的,也不是说继承就没用,继承在三大机制排第一呀,是基本的),比如工厂方法模式和生成器模式。“封装”的意义不仅仅在于封装代码的实现,更重要的是“封装”系统中变化的部分。设计模式回答了怎么样去“封装”这种变化。
在一个系统中,总会有一部分经常发生变化,相对的,也总有一个部分是改变频率较低的,我们可以在某种范围内将其理解为不改变的部分。设计模式要作的事情就是把“变化”的部分封装起来,实现将“变化”的部分与“不变化”的部隔离,这样,“变化”的部分在发生变化时,不会影响到“不改变”的部分。 如果你也学过设计模式,那你可能跟我有同感。设计模式解决变化的途径可以概括为两步(纯属个人见解):一是转移变化,二是转化变化。
首先是“转移变化”。
简单的说就是把a部分的变化转移到b部分,请b去变化,让a不发生变化。在程序中就是将变化从调用者转移到被调用者。比如,你有一个类scene,这个类用于显现一种风格的游戏场景,调用程序实例化这个类并使用它。如果有一天,需求改变了,当前风格的游戏场景颜色太冷了,我需要改变当前场景的颜色。这个时候你要决定,要让谁去发生变化?是让客户调用程序去改变scene类的颜色属性呢,还是让你的类scene发生变化?设计模式回答的是,请scene发生变化,调用者不发生变化。
为什么要这样回答,因为这个时候,你的系统可能已经交付用户了,如果让调用者发生变化,那整个系统都要发生变化。(这里讨论只是一个简单的应用,实际情况中往往没有这里简单。如果实际情况是这么简单的话,设计模式估计就没有用处了。)
然后是“转化变化”。
确定了要改动scene,那要怎么样去改scene呢?直接改吗?当然不行,如果是这样改,那还不如让调用者去设置scene的某个属性呢,反正都要重新部署。那要怎么改?“扩展”,把这种“改变”转化为“扩展”。你不是要另外一种
scene吗?那我重新为你设计一个sence并生成.dll交付你,然后让现有的程序去调用这个scene。当然,这时可能需要调用者稍微的发生一下变化,比如开始调用者是直接调用scene来呈现场景的,现在将其改为根据配置文件来决定要呈现那种scene。但是如果之前你已经考虑到这个问题了,那调用者是不需要发生任何变化的,因为调用者是根据配置来决定所呈现的场景,需求发生弯化,只需要改变配置文件(可能是一个xml),把调用者与新添的scene关联即可,这样一来,“改动”就变为“扩展”,其带来的好处也是显而易见的,这也就是所谓的“开闭”原则。
以上文字完全是本人理解,随着不断的学习,我想这么文章估计要被改好多次,这是一个学习的过程。理解错了、写错了都不要紧,关键是你怎么样去面对这种错误!是拒绝承认错误还是正视错误?这也是设计模式回答的问题。
第四篇:洋思模式心得体会
洋思模式心得体会
从学习杜郎口到学习洋思已经好几年了,每年每学期都要进行大规模的听课活动,可谓轰轰烈烈,但学习了好几年时间,我心中仍然一塌糊涂,一知半解,难以灵活运用,尝试着运用时,也是提襟见肘,顾此失彼。所以成功的经验很少,只能有一点粗略的感受。
我觉得目标设计尽量的要简洁明了,通俗易懂,要让绝大多数学生能够完成,如果太难或过于简单,都不利于学生的学习。目标设计应控制在1----3条为宜,如果目标太多,一节课根本无法完成,那就白设计了,从学生的角度来说,当看到很多的目标时,心中会产生恐惧和排斥情绪,不利于学习。
由于条件限制,当堂训练时只能采用课后练习和配套练习,缺少灵活性,对于在电子白板上做练习题,我总觉得效果不太好,因为一道题目看过后,印象不深,只有亲手做过,才能记忆深刻。
其它环节,我正在努力尝试、探索。
第五篇:教学模式心得体会
教学模式心得体会
近几年,我们在校领导的带领下,实施了有本校特色的四大模块,八大环节的课堂教学模式。通过我们几年来的努力专研,现在,我们都可以很流畅的把我校的教学模式运用到我们的课堂教学中了,当然,在这几年的专研中,我也有了自己的体会,现在,我就谈谈我个人的一些看法。
一、改变旧观念,接受新模式
对于一个新的事物,需要通过不断地学习去了解它,新的教学模式也是这样。这学期,学校组织我们进行了多次学习,深入了解新模式的内涵、原则及实施细则,并组织我们通过数多次的教学研讨课,让我们真正了解这种模式的操作方法。不管是讲座还是听课教研,我都积极参加,积极与同行进行研究,认识到了新模式的确有助于培养学生自主学习的能力,有助于培养学生的合作意识,有助于学生学习能力的提高,有助于切实提高课堂效率。于是,我就积极在自己的课堂上进行尝试,努力实现学生主体、教师主导的高效课堂。
二、把课堂还给学生
每节课上,我都不断地提醒自己:“要放手,还给学生更多的学习时间。学生会的,教师不讲;学生能说出来的,教师不说;学生通过谈论能解决的,就让学生讨论解决。”有了这样的意识,课上,学生活动的机会多了,学生读书的时间有了,学生合作的机会有了,学生自主学习、独立解决问题的能力提高了。课上,我只挑关键性的问题、共性问题组织教学,充分发挥激励评价的作用,让学生尽情地
展示自己。这样,学生的学习热情高涨,谁都想表现自己,谁都想得到大家的认可,学习效果有了提高。
三、把课前的准备做充分
每节课的教学,都需要教师事先的精心准备。我们的教学模式更是如此,哪怕就是指导学生怎样预习。我刚开始带的学生第一次接触预习,学生不知道该怎样下手,所以,手把手地教给方法就显得尤为重要。我为了让学生学会预习,我不怕耽误课堂时间,亲自在课堂上对学生预习的每一步进行指导,比如,我告诉学生要通过自己拼读音标来学会读单词,要通过英汉互译来熟练掌握单词。我还要亲自在课堂上指导学生如何写预习笔记,如此反复,虽然学生的预习还是不能完全放手,但是,看到相当一部分学生已经开始自主地预习下一单元时,我还是感到很欣慰,毕竟小进步也比原地踏步强。
针对这几年的英语教学,我也有点自己的看法:
一、靠持续不断的语言知识,而不是“玩”来培养学生持久的兴趣初中英语教学是要重视培养兴趣,但单靠唱歌游戏不能培养学生持久的兴趣。新鲜劲儿一过,孩子们就会厌倦。所以,唱歌游戏应该作为初中学生学习英语语言知识、技能的一些手段,而不是培养兴趣的手段。我们可以采用多种手段帮助学生在记忆力强的时期多记单词,多学习语言规则,并尽可能多创造模仿的机会,提高学生的语音和语调。在英语学习中,听、说、读、写、译五种能力是可以互补的。真正做到听说先行,读写跟上。光听说不读写,很难收到高效。只靠模仿不培养学习能力,也难减轻学习负担。所以初中学生还是应
当认真进行语言学习。
二、英语应用能力需要相应的词汇。“不学习语言规则、不掌握相当数量的词汇,英语应用能力就是空中楼阁”。目前在中学的低年级的英语教学中,不要求学生掌握词汇,而只要求学生能根据提示或图片说出该单词,其本质无非是要学生们死记硬背,鹦鹉学舌。由于学生们没有相应的读音规则训练,不熟悉词汇的拼写规则,单词的音、形、意三者不能有效的结合在一起,因而导致了单词记忆的困难,并成了中学生学英语的瓶颈。
三、中学英语教师应有发展意识一向以来,人们中学英语教师的语言知识能力要求不高,认为中学英语简单,不需要太好的语言功底,只要有良好的教学技能就可以了。其实时代在进步,社会在发展,同样英语作为人们最广泛的交际用语之一,更是随着高科技的迅猛发展而日新月异地变化着。如果我们的英语教师故步自封,不求进取,那么不但自己的语言知识很快陈旧落伍,误人子弟,而且会被时代所淘汰。“changing english in the changing world”。现代英语的变化,特别是口语方面的变化可从以下几个方面体现出来:1、随着人们生活节奏的不断加快,更因为国际互联网的形成,人们之间的交际变得越来越简捷。说话简单快捷,是现代人生活的一大特征。现代英语在这方面的变化表现为“一字多用”。2、随着现代科学技术的迅猛发展,现代英语词汇急剧增加,并且我们发现,现代英语词汇有相当一部分是取得新义的旧词,如,“input”(输入电子计算机的数据),“store”(电子计算机的储存器),“drive”(计
算机驱动器)等。3、英国英语和美国英语之间的距离越来越小。也许是美国对世界政治、经济影响日益强大的原因,美国英语的影响也越来越大,特别是对青少年的影响越来越大,他们以使用美语和发美国音为时髦。
当然,在实施新的教学模式的过程中我也有些困惑,譬如说学生由于作业量的增多而忽略了预习,导致课堂上不下去课的情况,我想,学校会为我们的教学模式的实施创造很好的条件的,相信在不久的将来,我们可以把教学模式变成我们自己的模式,
在教学上更上一层楼
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。
《设计模式心得体会》
由互联网用户整理提供,转载分享请保留原作者信息,谢谢!
http://m.bsmz.net/gongwen/285161.html
- 上一篇:职工观《忠诚与背叛》心得
- 下一篇:计算机网络心得