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

25万字详解:23种设计模式.docxVIP

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.5 万字 解:23 种 模式 本文简述了各大设计模式,并通过 UML 和代码详细说明。本文大约共 2.5W 字,建议收藏。下方是本文的目录: 一、设计模式的认识 二、设计模式的分类 ? 根据其目的 ? 根据范围 三、设计模式的优点 四、设计模式中关键点 五、创建型模式 ? 简单(静态)工厂模式 ? 工厂方法模式 ? 抽象工厂模式 ? 单例模式 ? 原型模式 ? 建造者模式 六、个人体会 一、设计模式的认识 设计模式(Design Pattern)是前辈们经过相当长的一段时间的试验和错误总结出 来的,是软件开发过程中面临的通用问题的解决方案。这些解决方案使用设计模 式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 二、设计模式的分类 (1)根据其目的 即模式是用来做什么的,可分为创建型(Creational),结构型(Structural)和行为 型(Behavioral)三种:①创建型模式主要用于创建对象。②结构型模式主要用于 处理类或对象的组合。③行为型模式主要用于描述对类或对象怎样交互和怎样分 配职责。 (2) 根据范围 即模式主要是用于处理类之间关系还是处理对象之间的关系,可分为类模式和对 象模式两种:类模式处理类和子类之间的关系,这些关系通过继承建立,在编译 时刻就被确定下来,是属于静态的。对象模式处理对象间的关系,这些关系在运 行时刻变化,更具动态性。 三、设计模式的优点 ①可以提高程序员的思维能力、编程能力和设计能力。②使程序设计更加标准 化、代码编制更加工程化,使软件开发效率大大提高,从而缩短软件的开发周 期。③使设计的代码可重用性高、可读性强、可靠性高、灵活性好、可维护性 强。 现在这样说肯定有些懵逼,需要在实际开发中才能体会得到真正的好处。 四、设计模式中关键点 (1)创建型模式:简单工厂:一个工厂类根据传入的参量决定创建出那一种产品 类的实例。 工厂方法:定义一个创建对象的接口,让子类决定实例化那个类。 抽象工厂:创建相关或依赖对象的家族,而无需明确指定具体类。 建造者模式:封装一个复杂对象的构建过程,并可以按步骤构造。 单例模式:某个类只能有一个实例,提供一个全局的访问点。 原型模式:通过复制现有的实例来创建新的实例。 (2)结构型模式 外观模式:对外提供一个统一的方法,来访问子系统中的一群接口。 桥接模式:将抽象部分和它的实现部分分离,使它们都可以独立的变化。 组合模式:将对象组合成树形结构以表示“”部分-整体“”的层次结构。 装饰模式:动态的给对象添加新的功能。 代理模式:为其他对象提供一个代理以便控制这个对象的访问。 适配器模式:将一个类的方法接口转换成客户希望的另外一个接口。 亨元(蝇量)模式:通过共享技术来有效的支持大量细粒度的对象。 (3)行为型模式模板模式:定义一个算法结构,而将一些步骤延迟到子类实现。 解释器模式:给定一个语言,定义它的文法的一种表示,并定义一个解释器。 策略模式:定义一系列算法,把他们封装起来,并且使它们可以相互替换。 状态模式:允许一个对象在其对象内部状态改变时改变它的行为。 观察者模式:对象间的一对多的依赖关系。 备忘录模式:在不破坏封装的前提下 ,保持对象的内部状态。 中介者模式:用一个中介对象来封装一系列的对象交互。 命令模式:将命令请求封装为一个对象,使得可以用不同的请求来进行参数化。 访问者模式:在不改变数据结构的前提下,增加作用于一组对象元素的新功能。 责任链模式:将请求的发送者和接收者解耦,使的多个对象都有处理这个请求的 机会。 迭代器模式:一种遍历访问聚合对象中各个元素的方法,不暴露该对象的内部结 构。 五、创建型模式 (1)简单(静态)工厂模式 1.认识 ①一句话来说就是,一个工厂类根据传入的参量决定创建出那一种产品类的实 例。因为逻辑实现简单,所以称为简单工厂模式,也因为工厂中的方法一般设置 为静态,所以也称为静态工厂,它不属于 23 种模式。 ②简单工厂模式专门定义一个工厂类来负责创建其他类的实例,被创建的实例通 常都具有共同的父类,在工厂类中,可以根据参数的不同返回不同类的实例。 升 级版本简单工厂模式,通过反射根据类的全路径名生成对象。 ③简单工厂模式就是将这部分创建对象语句分离出来,由工厂类来封装实例化对 象的行为,修改时只需要修改类中的操作代码,使用时调用该类不需要考虑实例 化对象的行为,使得后期代码维护升级更简单方便,有利于代码的可修改性与可 读性。 ④但是如果增加新的产品的话,需要修改工厂类的判断逻辑,违背开闭原则。 2.UML 图解 简单介绍一下 UML:泛化:继承 带三角箭头的实线,箭头指向类 实现:实现 带三角箭头的虚线,箭头指向接口 依赖:new A 的对象当作方法参数传递进来作为 B 类的局部变

文档评论(0)

小石头 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档