中间件技术知识应用课件第一部分 设计模式简介.pptx

中间件技术知识应用课件第一部分 设计模式简介.pptx

  1. 1、本文档共103页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中间件技术知识应用课件第一部分 设计模式简介.pptx

第一部分 设计模式简介一、什么是设计模式 1.设计模式“设计模式(pattern)是从许多优秀的软件系统中总结出的成功的可复用的设计方案”。2.GOF之说“尽管Alexander所指的是城市和建筑设计模式,但他的思想也同样适用于面向对象设计模式,只是在面向对象的解决方案里,我们用对象和接口代替了墙壁和门窗。两类模式的核心都在于提供了相关问题的解决方案”。模式的四个基本要素1.名称 一个模式的名称高度概括该模式的本质,有利于该行业统一术语、便于交流使用。2.问题 描述应该在何时使用模式,解释设计问题和问题存在的前因后果,描述在怎样的环境下使用该模式。3.方案 描述设计的组成部分,它们之间的相互关系及各自的职责和协作方式。4.效果 描述模式的应用效果及使用模式应当权衡的问题。主要效果包括使用模式对系统的灵活性、扩充性和复用性的影响。模式的四个基本要素例如,GOF之书如下记录中介者模式:名称 中介者问题 用一个中介者来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。方案 中介者(Mediator)接口、具体中介者(ConcreteMediator)、同事(Colleague)、具体同事(ConcreteColleague)。效果 减少了子类的生成、将各个同事解耦、简化了对象协议、控制集中化。二、设计模式的起源 软件领域的设计模式起源主要是受到1977年建筑大师Alexander出版的《A Pattern Language:Towns, Building, Construction》一书。 Alexander在其著作中将其建筑行业中的许多问题的最佳解决方案记录为200多种模式,其思想不仅在建筑行业影响深远,而且很快影响到了软件设计领域。1 设计模式的起源 1987年,Kent Beck和Ward Cunningham将Alexander在建筑学上的模式观点应用于软件设计,开发了一系列模式,并用Smalltalk语言实现了雅致的用户界面。Kent Beck和Ward Cunningham在1987年举行的一次面向对象的会议上发表了论文:《在面向对象编程中使用模式》,该论文发表后,有关软件的设计模式论文以及著作相继出版。学习设计模式的重要性6.学习设计模式不仅可以使我们使用好这些成功的模式,更重要的是可以使我们更加深刻地理解面向对象的设计思想,非常有利于我们更好地使用面向对象语言解决设计中的问题。7.学习设计模式对于进一步学习、理解和掌握框架是非常有帮助的,比如Java EE中就大量使用了《设计模式》一书中的模式,对于熟悉设计模式的开发人员,很容易理解这些框架的结构,继而很好地使用框架来设计他们的系统。学习设计模式的重要性8.《设计模式》一书所总结的成功模式不仅适合于面向对象语言,其思想及解决问题的方式也适合于任何和设计相关的行业,因此学习掌握设计模式无疑是非常有益的。合理使用模式 不是软件的任何部分都需要套用模式来设计的,必须针对具体问题合理的使用模式。1. 正确使用 当你设计某个系统,并确认所遇到的问题刚好适合使用某个模式,就可以考虑使用该模式到你的系统设计中,毕竟该模式已经被公认是解决该问题的成功方案,能使设计的系统易维护、可扩展性强、复用性好,而且这些经典的模式也容易让其他开发人员了解你的系统和设计思想。2. 避免教条模式不是数学公式、也不是物理定律、更不是软件设计中的“法律”条文,你完全可以修改模式中的部分结构以符合你的设计要求。 合理使用模式3.模式挖掘 模式不是用理论推导出来的,而是从真实世界的软件系统中被发现、按着一定规范总结出来的可以被复用的方案。许多文献或书籍里阐述的众多模式实际上都是GOF书中经典模式的变形,这些变形模式都经过所谓的“三次规则”,即该模式已经在真实世界的三个方案中被成功的采用。可以从某个系统中洞察出某种新模式,只要经过“三次规则”就会被行业认可。4.避免乱用 不是所有的设计中都需要使用模式,因为模式不是发明出来的,而是总结出来的,事实上,真实世界中的许多设计实例都没有使用过GOF之书中的经典模式。在进行设计时,尽可能用最简单的方式满足系统的要求,而不是费尽心机地琢磨如何在这个问题中使用模式.合理使用模式5.了解反模式 所谓反模式就是从某些软件系统中总结出的不好的设计方案,反模式就是告诉你如何采用一个不好的方案解决一个问题。既然是一个不好的方案,为何还有可能被重复使用呢?这是因为,这些不好的方案表面上往往有很强的吸引力,人们很难一眼就发现它的弊端,因此,发现一个反模式也是非常有意义的工作。在有了一定的设计模式的基础之后,你可以用有哪些信誉好的足球投注网站引擎查找有关反模式的信息,这对于学习好设计模式也是非常有帮助的。 合理使用模式 一个设计中,可能并不需要

文档评论(0)

youngyu0329 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档