设计模式讲解

设计模式讲解

ID:40313393

大小:37.50 KB

页数:7页

时间:2019-07-30

设计模式讲解_第1页
设计模式讲解_第2页
设计模式讲解_第3页
设计模式讲解_第4页
设计模式讲解_第5页
资源描述:

《设计模式讲解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、通常,概念和这些概念在现实世界中的应用是有区别的,设计模式也不例外。  设计模式无处不在。在阅读技术方面的出版物或者浏览技术方面的网站时,很容易发现对设计模式的引用。到目前为止,您很可能已经阅读过(至少翻阅过)一些设计模式方面的书籍,如《CoreJ2EEDesignPatterns》或者GangofFour编写的《DesignPatterns》。此时,您可能会对设计模式有一些疑问。设计模式如何帮助我?他们是银弹吗?使用设计模式有什么问题吗?为什么我不能从集成开发环境(integrateddevelopmentenvironment,

2、IDE)中获得设计模式?  上述的几个问题是采用设计模式进行处理过程中遇到的一些经典问题。通常,概念和这些概念在显示世界中的应用是有区别的,设计模式也不例外。本文将讨论设计模式在现实世界中的应用。这些信息可以帮助您成功地在项目中采用设计模式来作出正确的决定。快速概述  设计模式提供了一种共享经验的方式,可以使团体受益和避免不断的重复发明。设计模式通常捕捉问题的描述、问题的语境、推荐的问题解决方案以及使用解决方案后可以预见到的结果。为了具有最广泛的适用性(从而对更多的读者有用),设计模式通常从取决于环境的精确细节中抽象而来。这种抽象性

3、产生了一些把设计模式应用到现有的案例中所必需的译码。这是一个重要细节:尽管设计模式是共享专业知识的好方法,但通常它对正确应用专业知识是非常重要的。  设计模式这个概念最初产生于建筑行业。设计师(设计建筑物而不是计算机系统)意识到他们需要共享有关正确设计技术的想法。这些想法是在可以使设计师团体从分享经验和教训中获益的设计模式中形成的。设计模式在80年代后期从建筑业进入计算机系统领域。面向对象(Object-oriented,OO)原则逐渐得到普及,而设计模式成为培育新的OO追随者的最佳实践。  RichardGamma等(人们通常把他

4、们称作GangofFour[GoF])编著的《DesignPatterns:ElementsofReusableObject-OrientedSoftware》一书使设计模式成为万众瞩目的焦点。随着设计模式逐渐普及,他们所涉及的领域就像“BenandJerry”效应那样也逐渐广泛起来。对那些不熟悉著名冰淇淋品牌的人来说,BenandJerry是一家冰淇淋产品的供应商,其冰淇淋产品拥有各种可以想象得到的配料组合(还包括一些您永远想象不到的)。因此,它就是设计模式,和普通的OO设计模式一样来源于GoF的著作,但是现在包括了专为开发语言、

5、应用服务器、行业合成等提供的设计模式。设计模式分类  设计模式通常根据一些公共特性而组合在一起。GoF的著作把设计模式划分为三类:Creational、Behavioral和Structural。用于J2EE的设计模式通常划分为表现层(PresentationTier)、业务逻辑层(BusinessLogicTier)和集成层(IntegrationTier)。这种分组方式可以使描述所有设计模式共享的公共细节更加轻松,或者使设计模式的分类和发现更加轻松。  在对设计模式实际应用的讨论中,需要把设计模式划分为两类:broadexpos

6、ure和isolateduse。这种划分基于设计模式对应用程序设计人员和开发人员的可见性和应用程序的多个部分对设计模式的相依性。  Broadexposure设计模式因为可以影响多个团队成员或者应用程序的多个方面的设计和开发而闻名。这类设计模式的品质包括:·采用它会对很多根据设计模式创建的类产生负面影响。·应用程序的不同部分知道设计模式的使用。·使用这种设计模式的决定不能轻易取消。  这类设计模式的例子有Model-View-Controller(MVC)模式、ValueObjectJ2EE模式和DataAccessObject(D

7、AO)J2EE模式  Isolateduse是指设计模式的使用是隐藏细节的设计模式。这类设计模式的品质包括:·设计模式不影响其他团队成员或者应用程序其他部分的工作。·可以轻松地更改使用设计模式的决定,而且产生的影响极小。  这类设计模式的例子有SingletonGoF模式或者InterceptingFilterJ2EE模式。  将设计模式划分为几类为了解设计模式的范围提供了一种快速的方法。了解范围使评估设计模式的影响更加轻松。可以使用或者抛弃这种设计模式吗?一旦采用这种设计模式就会影响应用程序的设计吗?这种设计模式影响了应用程序的多

8、个部分和其他的应用程序了吗?预先了解这些影响为采用设计模式提供了指导。设计模式应用AntiPatterns  随着设计模式逐渐普及,出现了另一种叫做AntiPatterns的模式类型。尽管设计模式提供了关于可重复的最佳方法的专业知识,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。