2020年新版设计模式总结.docx

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
设计模式总概况: mw 软件设计果期惠/ w逵卑戳m 软件设计果期 惠/ w逵卑戳m ?左耳芒互^t£fr号靛駁駅 filial 轿航hi迓1 皱 ftHiz i 外吨曜氏j 鼻 JCKJft i ft Fl弔丈 :由隹i.r^z 建宣型也■ ?flitit / . / 一、设计原则 1、单一职责原则 一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果 一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可 能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。from 百度百科 2、开闭原则(Open Close Principle ) 开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码, 实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样 的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。 3、里氏代换原则(Liskov Substitution Principle ) 里氏代换原则(Liskov Substitution Principle LSP)面向对象设计的基本原则之一。 里氏代换原 则中说,任何基类可以岀现的地方,子类一定可以岀现。 LSP是继承复用的基石,只有当衍生类可以替换 掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的 行为。里氏代换原则是对“开 -闭”原则的补充。实现“开-闭”原则的关键步骤就是抽象化。而基类与子 类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。 from :百度 百科 4、依赖倒转原则( Dependence Inversion Principle ) 所谓依赖倒置原则(Dependence Inversion Principle )就是要依赖于抽象,不要依赖于具体。 简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。 实现开闭原则的关键是抽象化,并且从抽象化导出具体化实现,如果说开闭原则是面向对象设计的 目标的话,那么依赖倒转原则就是面向对象设计的主要手段。 from :百度百科 5、接口隔离原则(Interface Segregation Principle ) 这个原则的意思是:使用多个隔离的接口,比使用单个接口要好。还是一个降低类之间的耦合度的 意思,从这儿我们看岀,其实设计模式就是一个软件的设计思想,从大型软件架构岀发,为了升级和维护 方便。所以上文中多次岀现:降低依赖,降低耦合。 6、合成复用原则(Composite Reuse Principle ) 合成复用原则就是指在一个新的对象里通过关联关系(包括组合关系和聚合关系)来使用一些已有 的对象,使之成为新对象的一部分;新对象通过委派调用已有对象的方法达到复用其已有功能的目的。简 言之:要尽量使用组合/聚合关系,少用继承。 7、迪米特法则(最少知道原则) (Demeter Principle ) 为什么叫最少知道原则,就是说:一个实体应当尽量少的与其他实体之间发生相互作用,使得系统 功能模块相对独立。也就是说一个软件实体应当尽可能少的与其他实体发生相互作用。这样,当一个模块 修改时,就会尽量少的影响其他的模块,扩展会相对容易,这是对软件实体之间通信的限制,它要求限制 软件实体之间通信的宽度和深度。 二、创建型模式 在软件工程中,创建型模式是处理对象创建的设计模式,试图根据实际情况使用合适的方式创建对 象。基本的对象创建方式可能会导致设计上的问题,或增加设计的复杂度。创建型模式通过以某种方式控 制对象的创建来解决问题。 创建型模式由两个主导思想构成。一是将系统使用的具体类封装起来,二是隐藏这些具体类的实例 创建和结合的方式。 创建型模式又分为对象创建型模式和类创建型模式。对象创建型模式处理对象的创建,类创建型模 式处理类的创建。详细地说,对象创建型模式把对象创建的一部分推迟到另一个对象中,而类创建型模式 将它对象的创建推迟到子类中。 1、抽象工厂模式(Abstract Factory) 所谓抽象工厂模式就是她提供一个接口,用于创建相关或者依赖对象的家族,而不需要明确指定具 体类。他允许客户端使用抽象的接口来创建一组相关的产品,而不需要关系实际产岀的具体产品是什么。 这样一来,客户就可以从具体的产品中被解耦。它的优点是隔离了具体类的生成,使得客户端不需要知道 什么被创建了,而缺点就在于新增新的行为会比较麻烦,因为当添加一个新的产品对象时,需要更加需要 更改接口及其下所有子类。其 UML结构图如下: Factor

文档评论(0)

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

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

1亿VIP精品文档

相关文档