网站大量收购独家精品文档,联系QQ:2885784924

设计模式笔记.doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、开放-封闭原则(OCP) Open-Closed Principle原则讲的是:一个软件实体应当对扩展开放,对修改关闭 二、 里氏代换原则(LSP) Liskov Substitution Principle(里氏代换原则):子类型(subtype)必须能够替换它们的基类型。 三、?依赖倒置原则(DIP) 依赖倒置(Dependence Inversion Principle)原则讲的是:要依赖于抽象,不要依赖于具体。 抽象不应当依赖于细节;细节应当依赖于抽象;要针对接口编程,不针对实现编程。 四、?接口隔离原则(ISP) 接口隔离原则(Interface Segregation Principle)讲的是:使用多个专门的接口比使用单一的总接口总要好。换而言之,从一个客户类的角度来讲:一个类对另外一个类的依赖性应当是建立在最小接口上的。 实现方法: 1、?使用委托分离接口 2、?使用多重继承分离接口 五、?合成/聚合复用原则(CARP) 合成/聚合复用原则(Composite/Aggregate Reuse Principle或CARP)经常又叫做合成复用原则(Composite Reuse Principle或CRP),就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新对象通过向这些对象的委派达到复用已有功能的目的。 简而言之,要尽量使用合成/聚合,尽量不要使用继承。 区分Has-A与Is-A Is-A是严格的分类学意义上定义,意思是一个类是另一个类的一种。而Has-A则不同,它表示某一个角色具有某一项责任。 六、?迪米特法则(LoD) 迪米特法则(Law of Demeter或简写LoD)又叫最少知识原则(Least Knowledge Principle或简写为LKP),也就是说,一个对象应当对其它对象有尽可能少的了解。 迪米特法则与设计模式 Facade模式、Mediator模式 创建型模式种类 ? Singleton单例模式,保证一个类仅有一个实例 ? Factory Method工厂方法模式,定义一个创建对象的接口,并控制用哪一个类进行实例化 ? Abstract Factory–抽象工厂模式,创建一系列相关或相互依赖的对象 ? Prototype–原型模式,通过拷贝现有对象来生成新对象(克隆方法) ? Builder–生成器模式,将构造对象实例的代码逻辑移到类的外部 结构型模式 ? 结构型模式涉及到如何组合类或对象,以获得更大的结构 ? 结构型类模式采用继承机制来组合接口或实现 ? 结构型对象模式描述了如何对一些对象进行组合,从而实现新功能的一些方法 Adapter适配器模式,将一个类的接口转换成客户希望的另外一个接口,使得原本由于 接口不兼容而不能一起工作的那些类可以一起工作 HYPERLINK \l _Hlk257378718 \s 1,7694,7709,0,,适配器(Adapter)模式 适配器(Adapter)模式 ? HYPERLINK \l _Hlk257383997 \s 1,11760,11773,0,,桥梁(Bridge)模式 桥梁(Bridge)模式,将抽象部分与它的实现部分分离,使它们都可以独立地变化 ? Composite组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性 HYPERLINK \l _Hlk257384073 \s 1,9625,9641,0,,合成(Composite)模式 合成(Composite)模式 ? Decorator 装饰模式,动态地给一个对象添加一些额外的职责 HYPERLINK \l _Hlk257381643 \s 1,9397,9413,0,,装饰(Decorator)模式 装饰(Decorator)模式 ? Facade 外观模式,为子系统中的一组接口提供一个一致的界面,使得这一子系统更加容易使用 ? Flyweight 享元模式,运用共享技术有效地支持大量细粒度的对象 HYPERLINK \l _Hlk257382316 \s 1,10537,10553,0,,享元(Flyweight)模式 享元(Flyweight)模式 ? Proxy代理模式,为其他对象提供一种代理以控制对这个对象的访问 HYPERLINK \l _Hlk257382275 \s 1,10184,10196,0,,代理(Proxy)模式 代理(Proxy)模式 行为型模式 ? 行为型模式涉及到算法和对象间职责的分配 ? 行为型模式不仅描述对象或类的模式,还描述它们之间的通信模式,将注意力转移到对象间的联系方式上来 行为型模式种类 ? Chain of responsibil

文档评论(0)

189****6140 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档