设计模式论文.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
设计模式论文

第一章 设计模式的简介 2 1.1什么是设计模式 2 1.2 设计模式的基本要素 2 1.3学习设计模式的重要性 2 1.4面向对象的特征 3 1.4.1 封装 3 1.4.2 继承 3 1.4.3 多态 3 第二章 面向对象的几个基本原则 4 2.1面向抽象原则 4 2.2“开-闭”原则 4 2.3“多用组合,少用继承”原则 4 2.4“高内聚-弱耦合”原则 5 第三章 设计模式分类 5 3.1行为型模式 5 3.2结构型模式 5 3.3创建型模式 6 3.4 工厂模式情景举例 6 3.4.1 设计要求 6 3.4.2 设计实现 7 第四章 设计模式学习总结 10 致谢 10 参考文献 11 第一章 设计模式的简介 1.1什么是设计模式 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计面向对象软件比较困难,而设计可复用的面向对象软件就更加困难,你必须先找出有关的对象,以适当的粒度将他们归类,在定义的接口和继承类,建立对象之间的相互关系。你的设计应该对手头的问题有针对性,同时对将来的问题有足够的通用性。设计出尽可能少的重复设计模式。有经验的面向对象设计者能做出良好的设计,二新手则面对众多选择无从下手。设计模式使人们可以更加简单方便地复用成功的设计和体系结构。 1.2 设计模式的基本要素 记录一个设计模式需要4个基本要素: (1)名称:一个模式的名称高度包括该模式的本质,有利于该行业统一术语、便于交流使用。 (2)问题:描述应该在何时使用模式,解释设计问题和问题存在的前因后果,描述在怎样的环境下使用该模式。 (3)方案:描述设计的组成部分、他们之间的相互关系及各自的职责和协作方式。 (4)效果:描述模式的应用效果及使用模式应该权衡的问题。主要效果包括使用模式对系统的灵活性、扩充性和复用性的影响。 1.3学习设计模式的重要性 一个好的设计系统往往是易维护、易扩展、易复用的,学习好设计模式对提高设计能力无疑是非常有帮助的。 设计模式的目的不是针对软件设计和开发中的每个问题都给出解决方案,而是针对某种特定环境中通常都会遇到的某种软件开发问题给出可用的一些解决方案,因此学习设计模式不仅可以使我们使用好这些成功的模式,更重要的是可以是我们更加深刻地理解面向对象的设计思想,非常有利于我们更好的使用面向对象语言解决设计中的问题。 1.4面向对象的特征 随着计算机硬件设备功能的进一步提高,使得基于对象的编程成为可能(面向对象语言编写的程序需要消耗更多的内存,需要更快的CPU保证其运行速度)。基于对象的编程更加符合人的思维模式,使用面向对象语言可以编写易维护、易扩展和易复用的程序代码,更重要的是,面向对象编程鼓励创造性的程序设计。 1.4.1 封装 面向对象编程的核心思想之一就是将数据核对数据的操作封装在一起。通过抽象,即从具体的实例中抽取共同的性质形成一般的概念比如,类的概念。 1.4.2 继承 继承是一种由已有的类定义出新类的机制。利用继承,可以先定义一个共有属性的一般类,根据该一般类再定义具有特殊属性的子类,子类继承一般类的属性和行为,并根据需要增加他自己的心得属性和行为。 由继承而得到的类称为子类,被继承的类称为父类(超类)。Java不支持多重继承,即子类只能有一个父类(与C++不同)。 1.4.3 多态 多态是面向对象编程的又一种重要特征。有两种意义的多态。一种是操作名称的多态,即有多个操作具有相同的名字,但这些操作所接受的消息类型必须不同。所谓操作名称的多态性,是指可以向操作传递不同的消息,以便让对象根据响应的消息来产生相应的行为。另一种是和继承有关的多态,是指同一个操作被不同类型对象调用时可能产生不同的行为。 第二章 面向对象的几个基本原则 2.1面向抽象原则 所谓面向对象编程,是指当设计一个类时,不让该类面向具体的类,而是面向抽象类或接口,即所设计类中的重要数据是抽象类或接口声明的变量,而不是具体类声明的变量。 2.2“开-闭”原则 所谓“开-闭”原则,就是让我们的设计对扩展开放,对修改关闭。实际上这句话的本质是指当一个设计中增加新的模块时,不需要修改现有的模块。在给出一个设计时,应当首先考虑到用户需求的变化,将应对用户变化的部分设计为对扩展开放,而设计的核心部分是经过精心考虑之后确定下来的基本结构,这部分应当是对修改关闭的,即不能因为用户的需求变化而再发生变化,因为这部分不是用来应对需求变化的。如果一个设计遵守了“开-闭”原则,那么一定是易维护的,因为在设计中增加新的模块时,不必去修改设计中的核心模

文档评论(0)

dashewan + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档