![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式学习
文章平均质量分 85
皮卡冲撞
这个作者很懒,什么都没留下…
展开
-
设计模式-建造者(生成器)模式
在本文中,我们将介绍建造者模式的概念、作用和优势,并探讨它与其他设计模式的关系。建造者模式通过将对象的构建过程封装起来,使得建造过程和表示分离,并提供灵活的配置选项。通过抽象建造者、具体建造者和指挥者的协作,客户端可以获得不同的产品表示。然而,建造者模式增加了代码量,并对构建顺序有一定要求。原创 2023-09-02 09:19:46 · 826 阅读 · 0 评论 -
设计模式-迭代器
迭代器模式是一种行为型设计模式,它允许客户端逐个访问聚合对象中的元素,而不用暴露聚合对象的内部表示。迭代器模式通常在需要遍历一个聚合对象中的元素,并且不想暴露其内部结构时使用。例如,Java 中的集合框架就使用了迭代器模式来遍历集合中的元素。原创 2023-08-31 14:58:44 · 1427 阅读 · 0 评论 -
设计模式-装饰模式
装饰模式是一种结构型设计模式,它允许动态地向对象添加额外的功能。装饰模式通过包装对象实现功能的动态拓展,使得系统具有更高的灵活性和可扩展性。它应用广泛,在动态添加功能、避免子类爆炸等场景都很有价值。同时,要注意使用装饰模式时,保持透明性和安全性的平衡,确保装饰器和组件具有一致的接口。原创 2023-08-31 14:37:01 · 969 阅读 · 0 评论 -
设计模式-适配器
设计模式概述设计模式是软件开发中常用的解决问题的经验总结,它们提供了一种被广泛接受的最佳实践。设计模式可以帮助开发人员更好地组织和设计代码,提高代码的可读性、可维护性和可扩展性。适配器模式介绍适配器模式(Adapter Pattern)是一种常用的结构型设计模式。它主要用于将一个类的接口转换成另一个类所期望的接口,以解决不兼容的接口之间的问题。适配器模式可以使得原本不兼容的类能够协同工作。适配器模式的核心思想是创建一个适配器类,该适配器类实现目标接口,并持有一个被适配的对象。原创 2023-08-31 10:50:56 · 1662 阅读 · 0 评论 -
设计模式-单例模式
懒汉式是一种常用的单例模式实现方式。它与饿汉式不同,饿汉式在类加载时就立即创建实例,而懒汉式则是在第一次使用时才创建实例。双重检查锁(Double-Checked Locking)是一种在懒汉式基础上改进的单例模式实现方式。它通过使用双重检查来减少锁的使用次数,提高了性能。静态内部类是一种常用的单例模式实现方式。它利用了类加载机制和静态内部类的特性来实现延迟加载和线程安全。枚举类是一种特殊的类,用于定义一组有限的常量。在单例模式中,使用枚举类来实现单例是一种简洁、安全和可序列化的方式。原创 2023-08-31 10:42:15 · 883 阅读 · 0 评论 -
设计模式-原型模式详解
简介设计模式设计模式是在软件开发中常见问题的解决方案,它们是经过实践和经验总结出来的可重用的设计思想和解决方案。设计模式通过提供通用的架构、原则和指导,帮助开发人员更有效地编写高质量的代码。设计模式分为三个主要类别:创建型模式:关注对象的创建过程,包括如何实例化对象,隐藏对象的创建细节以及对象的复制和克隆。结构型模式:关注对象和类的组合方式,以实现更大结构的目标,例如类之间的关系。行为型模式:关注类和对象间的交互和通信方式,以实现更好的协作和控制。原型模式简介。原创 2023-08-31 09:08:40 · 1793 阅读 · 0 评论 -
外观模式:简化复杂子系统的访问与使用
外观模式是一种结构型设计模式,它提供了一个统一的接口,用于简化复杂子系统的访问和使用。通过外观模式,可以隐藏子系统的复杂性,并将其封装在一个高层接口之后,使得客户端可以通过调用这个外观接口来间接地访问子系统的功能。外观模式有助于降低系统的耦合度,提高系统的灵活性和可维护性。外观模式,也称为门面模式,是一种结构型设计模式,旨在将复杂的子系统封装为一个简单易用的接口,以减少系统的复杂度并提高代码的可维护性和灵活性。原创 2023-08-30 21:37:12 · 601 阅读 · 0 评论 -
设计模式行为型-状态模式
状态模式是一种行为型设计模式,用于处理对象在不同状态下的行为变化。它将对象的行为封装在不同状态类中,通过状态的切换实现不同行为的触发。本文将介绍状态模式的基本概念、应用场景以及优势与适用性。上下文类包含状态对象的引用,并将具体行为委托给当前状态对象执行。示例代码:// 上下文类// 委托当前状态对象执行行为状态模式是一种有助于管理对象不同状态下行为变化的设计模式。通过将状态和行为封装在不同状态类中,状态模式提供了一种结构化的方式来处理状态转换和行为委托。原创 2023-08-30 20:45:21 · 915 阅读 · 0 评论 -
设计模式行为模式-访问者模式
概述访问者模式:访问者模式是一种行为型设计模式,它将数据结构与对数据的操作分离,从而实现操作的独立性和扩展性。访问者模式的作用和优势:访问者模式可以处理复杂的对象结构,使得新增操作简单且不影响已有元素类。访问者模式定义了一组角色及其相应职责,包括元素、具体元素、访问者、具体访问者和对象结构。结合AOP(面向切面编程)的业务,访问者模式可以用来实现动态的AOP切入。AOP主要关注在程序运行期间对横切关注点(如日志记录、性能监测、事务管理等)的处理。原创 2023-08-30 20:21:46 · 57 阅读 · 0 评论 -
设计模式行为模式-命令模式
命令模式(Command Pattern)是一种行为型设计模式,用于将请求封装为对象,从而使你可以使用不同的请求、队列或者日志请求来参数化其他对象。这样可以实现请求的参数化操作、队列化和日志化,且能够支持撤销操作。这个示例展示了如何使用 Java 实现一个简单的消息队列框架。通过将消息封装为对象,我们可以方便地在生产者和消费者之间进行消息的传递和处理。使用消息队列框架可以实现解耦和异步处理的优势。生产者负责发送消息,消费者负责处理消息,它们通过共享的消息队列进行通信。原创 2023-08-30 19:48:07 · 793 阅读 · 0 评论 -
想象的重要性(抽象工厂)
在看到抽象工厂的时候,在这里面要注意的就是抽象二字,正是因为有了这个抽象才把多而复杂的问题给简单化了,在生活中经常看到一些系列性的东西,但是这些系列性的东西再生产的时候要如何方便呢,这个问题就是今天要说的最重要的事情,在代码的世界中也是一个道理,下面这张图就是解释这个问题的最好途径之一。通过图中可以看到冰淇淋后面有很多种口味,就不一一列举了,首先我们在生产冰淇淋的时候就需要有一个工厂了,这个工厂是用来生产冰淇淋的,生产完冰淇淋以后我们需要有不同的口味已满足顾客需求吧,那就再创建一个专门负责口味调制的工厂原创 2020-11-29 18:21:53 · 162 阅读 · 18 评论 -
原则的重要性(单一职责原则-开放封闭原则)一
在我们写代码的过程中我们要遵守一些规则(原则)比如在代码后面添加注释,还有对于重复代码要进行一个打包的过程,这些都是原则,这次所说的原则是在以后代码路上同样很重要的两个原则,分别是单一职责原则与开放封闭原则。首先先说单一职责原则,这个原则的只要作用就是每一个类的职责应该只有一个就好,如果一个类出现了多个职责在被触发的时候可能会影响其它的职责,而且出现多个职责耦合还会影响复用性,而这里的职责其实就是变化的原因,就相当于这个类的开关(触发器)。而且这个单一职责原则我们也可以理解它是高内聚低耦合的引申。下原创 2020-12-06 17:58:58 · 239 阅读 · 17 评论 -
打扮一下(装饰模式)
使用场景 在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。 需要动态地给一个对象增加功能,这些功能也可以动态地被撤销。 当不能采用继承的方式对系统进行扩充或者采用继承不利于系统扩展和维护时。不能采用继承的情况主要有两类:第一类是系统中存在大量独立的扩展,为支持每一种组合将产生大量的子类,使得子类数目呈爆炸性增长;第二类是因为类定义不能继承(如final类). 角色抽象构件角色(Component):定义一个对象接口或抽象类,可以给这些对象动态地添加职责。原创 2020-12-13 21:03:08 · 112 阅读 · 21 评论 -
桥 接模式
桥接模式:是将抽象部分与它的实现部分分离,使它们都可以独立地变化。这么说可能就比较抽象了,但是如果通过这张图片来理解的话就会比较简单了。1. 手机品牌抽象类 桥梁的一头。 1 public abstract class HandsetBrand { 2 3 protected HandsetSoft soft; 4 5 //设置手机软件 6 public void setHandsetSoft(HandsetSoft soft)...原创 2020-12-27 20:00:47 · 123 阅读 · 23 评论