设计模式学习英俊.pdf

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一. 设计模式 什么是设计模式? 设计模式 (Design pattern)是一套被反复使用、多数人知晓的、经过分 类编目的、代码设计经验的总结。 应用设计模式有什么好处? 设计模式是优秀的使用案例,使用设计模式可提高代码的重用性、让代 码更容易被他人理解、保证代码的可靠性。 23种设计模式: 二.设计原则 1.单一职责原则: 就一个类而言,应该仅有一个引起它变化的 。如果一个类承担的职责过多 ,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力 。这种耦合会导致脆弱的设计,当变化发生时,设计会 到意想不到的破坏。 APPLICATIONS 2.开放—封闭原则: 软件实体 (类、模块、函数等)应该可以扩展,但是不可以修改。对于 扩展是开放的 (Open for extension ),对更改是封闭的 (Closed for modification)。面对需求的改变可以保持相对稳定,从而使得系统可以在第一个版本以后不 断推出新的版本。 3.依赖倒转原则: A. 模块不应该依赖底层模块。两个都应该依赖抽象。 B.抽象不应该依赖细节。细节应该依赖抽象。 4.里氏代换原则: 子类型必须能够替换掉它们的父类型。一个软件实体如果使用的是一个父类的话 ,那么一定适用于其子类,而且它察觉不出父类对象和子类对象的区别。也就是说,在软件里面, 把父类都替换成它的子类,程序的行为没有变化。 二.设计原则 5.迪米特法则 (最少知识原则): 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互 作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三 者转发这个调用。迪米特法则首先强调的前提是在类的结构设计上,每一个类都应当尽量降 APPLICAT IONS 低成员的 权限。(类之间的耦合越弱,越利于 复用,一个处在弱耦合的类被修改,不会对有关 系的类造成波及。) 6.接口 原则 (Interface-Segregation Pr iple): 其 思想是:使用多个小的专门的接口,而不要使用一个大的总接口。 具体而言,接口 原则体现在:接口应该是内聚的,应该避免 “胖”接口。一个类对另外一 个类的依赖应该建立在最小的接口上,不要强迫依赖不用的方法,这是一种接口污染。 三.工厂模式 什么是工厂模式? 1.工厂模式概念: AP PL ICATIONS 实例化对象,用工厂方法代替new操作。 工厂模式包括工厂方法模式和抽象工厂模式。 抽象工厂模式是工厂方法模式的扩展。 2.工厂模式的意图: 定义一个接口来创建对象,但是让子类来决定哪些需要被实例化。 工厂方法把实例化的工作推 子类中去实现。 3.什么情况下适合工厂模式: 有一组类似的对象需要创建。 在编码时不能预见需要创建哪种类的实例。 系统需要考虑扩展性,不应依赖于产品类实例如何被创建、组合和表达 的细节。 三.工厂模式总结 1.工厂方法模式和抽象工厂模式对比: 工厂模式是一种 情况的抽象工厂模式,而抽象工厂模式可以看成是 工厂模式的推广。 工厂模式用来创建一个产品的等级结构,而抽象工厂模式是用来创建多 个产品的等级结构。 工厂模式只有一个抽象产品类,抽象工厂模式有多个抽象产品类。 2.工厂模式的实现帮助我们: 系统可以在不修改具体工厂角色的情况下引进新的产品。 客户端不必关心对象如何创建,明确职责。 更好的理解面向对象的原则,面向接口编程,而不要面向实现编程。 3.什么情况下适合工厂模式: 有一组类似的对象需要创建。 在编码时不能预见需要创建哪种类的实例。 系统需要考虑扩展性,不应依赖于产品类实例如何被创建、组合和表达 的细节。 四.单例模式 什么是单例模式 (Singleton) ? APPLICATIONS 有些对象我们只需要一个,比如:

您可能关注的文档

文档评论(0)

158****9376 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档