`

设计模式笔记

阅读更多
工厂模式,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建

工厂模式适合:凡是出现了大量的产品需要创建,并且具有共同的接口时,可以通过工厂方法模式进行创建。

工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则,所以,从设计角度考虑,有一定的问题,如何解决?就用到抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。

工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性,建造者模式将很多功能集成到一个类里,这个类可以创造出比较复杂的东西。所以与工程模式的区别就是:工厂模式关注的是创建单个产品,而建造者模式则关注创建符合对象,多个部分

原型模式虽然是创建型的模式,但是与工程模式没有关系,从名字即可看出,该模式的思想就是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。


适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。

类的适配器模式:当希望将一个类转换成满足另一个新接口的类时,可以使用类的适配器模式,创建一个新类,继承原有的类,实现新的接口即可。

对象的适配器模式:当希望将一个对象转换成满足另一个新接口的对象时,可以创建一个Wrapper类,持有原类的一个实例,在Wrapper类的方法中,调用实例的方法就行。

接口的适配器模式:当不希望实现一个接口中所有的方法时,可以创建一个抽象类Wrapper,实现所有方法,我们写别的类的时候,继承抽象类即可。


装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例

装饰器模式的应用场景:

1、需要扩展一个类的功能。

2、动态的为一个对象增加功能,而且还能动态撤销。(继承不能做到这一点,继承的功能是静态的,不能动态增删。)

缺点:产生过多相似的对象,不易排错!


外观模式是为了解决类与类之家的依赖关系的,像spring一样,可以将类和类之间的关系配置到配置文件中,而外观模式就是将他们的关系放在一个Facade类中,降低了类类之间的耦合度,该模式中没有涉及到接口


组合模式有时又叫部分-整体模式在处理类似树形结构的问题时比较方便
分享到:
评论

相关推荐

    韩顺平_Java设计模式笔记.docx

    "韩顺平_Java设计模式笔记" 本资源摘要信息是对《韩顺平_Java设计模式笔记.docx》的总结和分析,该笔记涵盖了 Java 设计模式的基础知识、设计模式的七大原则、原型设计模式、解释器设计模式、单例设计模式等内容,...

    设计模式笔记(精版)

    以上只是设计模式笔记中的一部分内容,实际上每个模式都有其特定的适用场景和优缺点。理解并熟练运用这些模式,可以提高代码的可读性、可维护性和复用性,降低系统复杂度,提升软件设计的质量。在实际项目中,应根据...

    自己总结的设计模式笔记

    设计模式笔记 设计模式是软件开发中常用的解决方案,能够提高代码的灵活性、可维护性和可扩展性。以下是设计模式的七大原则和两种常用的创建型设计模式。 1. "开-闭"原则 "开-闭"原则是设计模式的核心原则,指...

    设计模式笔记.docx

    设计模式笔记 本文档主要记录了设计模式的笔记,涵盖了UML统一建模语言、用例图、类图、设计模式基本概念、面向对象设计原则、开闭原则等内容。 UML统一建模语言是软件工程中一种标准的建模语言,使用图形化的方法...

    Java设计模式笔记

    以上只是Java设计模式笔记的冰山一角,实际笔记中还会有更多关于每种模式的详细描述、示例代码和应用场景。通过学习和应用这些模式,开发者可以写出更加优雅、可维护的代码,提升团队协作效率和软件质量。

    软件体系结构与设计模式笔记

    软件体系结构与设计模式笔记 软件体系结构是指一个程序或系统的结构,它们之间的相互关系,以及在设计和交付的整个过程中的原则和指导方针。软件体系结构包括构件、连接件和约束三个要素。构件是可预制和可重用的...

    HeadFirst设计模式笔记

    《HeadFirst设计模式笔记》是深入理解软件设计思想的一份宝贵资料,主要涵盖了设计模式的基础理论和实际应用。设计模式是软件开发中的经验总结,它为解决常见的编程问题提供了标准的解决方案,使得代码更具可读性、...

    图解Java设计模式笔记总结word版本.rar

    本资料“图解Java设计模式笔记总结word版本”聚焦于通过图文并茂的方式,深入浅出地解析各种设计模式。以下是基于这个主题的详细知识点讲解: 1. **设计模式的分类** - **创建型模式**:如单例(Singleton)、工厂...

    软件体系结构与设计模式笔记样本.doc

    软件体系结构与设计模式笔记样本 软件体系结构是指软件系统的组织方式和结构,它是软件设计的核心概念。软件体系结构涉及构件、连接件和约束三个要素,构件是可预制和可重用软件部件,是构成体系构造基本计算单元或...

    GOF设计模式笔记

    ### GOF设计模式笔记 #### 一、面向对象设计的基本原则 面向对象设计的原则是指导我们在设计软件系统时遵循的一些准则,这些原则有助于提高代码的可读性、可维护性和可扩展性。 - **SRP (单一职责原则)**: 单一...

    韩顺平_java设计模式笔记

    Java设计模式是软件开发中的一种最佳实践,它们是为了解决特定场景下的设计问题而发展起来的。23种设计模式被广泛应用于提高代码的可重用性、可读性、可维护性和灵活性。韩顺平老师的Java设计模式课程通过生活中的...

Global site tag (gtag.js) - Google Analytics