
设计模式
文章平均质量分 87
十方来财
云烟缥缈心已空,玉阶微照照孤宫。寂寞竹影随风舞,梦回何处是逢逢。
空灵宫里无尘埃,一水云天共悠哉。归去来兮看我心,任由岁月任东来。
千山万水皆梦境,空灵宫中无风声。寂寂深林藏远意,一抹孤月照心静。
心随风远无所依,空灵宫内自逍遥。听风细语读岁月,恍若长空云自飘。
展开
-
Java设计模式 三十六 访问者模式 + 组合模式
将访问者模式和组合模式结合使用,能够有效地解耦对象结构和操作行为。组合模式负责提供树形结构表示部分与整体的关系,而访问者模式则负责在这些结构上执行各种操作,如计算薪资总和、打印员工信息等。结合这两种模式,可以使得系统在扩展新操作时更加灵活,同时保持较高的代码可维护性。原创 2025-01-23 22:41:22 · 652 阅读 · 0 评论 -
Java设计模式 三十五 责任链模式 + 中介者模式
将责任链模式和中介者模式结合使用,可以使得请求的处理更加灵活和可扩展。责任链模式负责请求的传递和处理,而中介者模式则集中管理请求的流转和各个组件的交互。通过这种组合模式,可以有效地解耦系统中的各个组件,提高系统的可维护性、灵活性和扩展性。原创 2025-01-23 22:41:13 · 1115 阅读 · 0 评论 -
Java设计模式 三十四 桥接模式 + 策略模式
将桥接模式和策略模式结合使用,能够有效地解耦系统中的抽象和实现部分,使得每个组件可以独立变化,从而提高了系统的灵活性和可扩展性。通过桥接模式管理不同的实现(如绘制工具),通过策略模式提供多样的算法(如不同的绘制方法),使得图形的处理和行为更加动态且可配置。这种模式组合非常适用于需要灵活替换算法或行为的系统。原创 2025-01-23 22:40:49 · 614 阅读 · 0 评论 -
Java设计模式 三十三 建造者模式 + 抽象工厂模式
将建造者模式与抽象工厂模式结合使用,可以有效地管理复杂产品的构建过程。抽象工厂模式用于创建产品族,并保证产品的相关性和一致性,而建造者模式则用于逐步构建产品的复杂部分。这种组合非常适合需要构建多个复杂产品的系统,能够提高系统的灵活性和可扩展性。原创 2025-01-23 22:40:39 · 508 阅读 · 0 评论 -
Java设计模式 二十四 设计模式组合
设计模式组合指的是将多个设计模式结合起来,构建一个更加灵活和高效的系统。原创 2025-01-23 22:40:26 · 789 阅读 · 0 评论 -
Java设计模式 十六 策略模式 (Strategy Pattern)
策略模式通过将算法封装在独立的策略类中,使得算法的切换变得更加灵活。它避免了在代码中出现大量的条件判断,使得系统更加符合开闭原则,便于扩展和维护。尤其在面对需要多种行为或算法的场景下,策略模式提供了一种非常有效的解决方案。原创 2025-01-23 22:39:33 · 539 阅读 · 0 评论 -
Java设计模式 十五 观察者模式 (Observer Pattern)
观察者模式是一种非常常见且实用的设计模式,它通过一对多的方式,帮助实现对象之间的松耦合通信。主题和观察者的解耦使得它非常适用于动态变化和事件驱动的应用场景,特别是在GUI、消息通知、系统监控等领域具有广泛应用。原创 2025-01-23 22:39:20 · 764 阅读 · 0 评论 -
Java设计模式 三十二 工厂模式 + 抽象工厂模式
通过将工厂模式和抽象工厂模式结合使用,我们能够实现更加灵活和可扩展的对象创建机制。工厂模式适合简单的对象创建,而抽象工厂模式则可以帮助我们创建一系列相关或依赖的对象。在多平台、产品族等场景下,组合这两种模式可以有效地管理和扩展系统的创建逻辑。原创 2025-01-22 10:42:21 · 683 阅读 · 0 评论 -
Java设计模式 三十一 命令模式 + 责任链模式
命令模式 + 责任链模式的结合能够灵活地管理请求的传递和处理。命令模式通过封装请求,使得请求可以独立管理;责任链模式通过将请求沿着处理链传递,使得请求的处理过程可以动态调整。这种组合非常适合用于需要多步骤处理、动态控制流程的系统,能够使代码更具灵活性和可扩展性。原创 2025-01-22 10:42:11 · 801 阅读 · 0 评论 -
Java设计模式 三十 状态模式 + 策略模式
状态模式 + 策略模式的结合为具有复杂状态和动态行为选择的系统提供了一个高效的解决方案。状态模式通过管理状态的变化来切换行为,而策略模式则通过封装不同的行为选择策略,使得系统在运行时能够根据当前状态灵活选择不同的算法或行为。原创 2025-01-22 10:42:01 · 1222 阅读 · 0 评论 -
Java设计模式 二十九 观察者模式 + 中介者模式
观察者模式 + 中介者模式的结合能够有效地解耦组件之间的关系,并实现复杂的事件驱动系统。观察者模式提供了一种灵活的事件通知机制,而中介者模式集中管理系统中各个对象的交互。两者结合能够让系统更具扩展性和可维护性,尤其适合需要协调多个组件交互的复杂场景。原创 2025-01-22 10:41:52 · 742 阅读 · 0 评论 -
Java设计模式 二十八 代理模式 + 装饰器模式
代理模式 + 装饰器模式的组合是一种非常灵活且强大的设计模式应用,能够同时利用代理模式的控制功能和装饰器模式的动态扩展功能。在系统设计中,代理模式可以确保对对象的访问控制,而装饰器模式可以灵活地增强对象的功能,两者结合能够提供高内聚、低耦合且易于扩展的解决方案。原创 2025-01-22 10:41:42 · 805 阅读 · 0 评论 -
Java设计模式 二十七 策略模式 + 模板方法模式
策略模式 + 模板方法模式是一种功能互补的组合设计模式。模板方法模式提供了固定的算法框架,而策略模式允许动态替换其中的可变部分。通过这种组合,可以实现灵活、可扩展的系统架构,同时保持代码的清晰性和可维护性。适用于需要固定流程但某些步骤需要灵活扩展的场景。原创 2025-01-22 10:41:32 · 538 阅读 · 0 评论 -
Java设计模式 二十六 工厂模式 + 单例模式
工厂模式 + 单例模式的组合是一种常见的设计模式组合,用于解决全局唯一资源的创建和管理问题。通过将工厂类设计为单例,我们可以确保全局共享的工厂实例,同时通过工厂模式灵活创建不同类型的对象。这种组合在实际开发中非常实用,特别是在需要集中管理全局资源(如数据库连接、日志系统、配置管理器)时尤为适合。原创 2025-01-22 10:41:21 · 470 阅读 · 0 评论 -
Java设计模式 二十五 组合模式 + 迭代器模式
组合模式适合处理树形结构中的“部分-整体”关系,而迭代器模式为复杂的树形结构提供了统一的遍历方式。两者的组合是许多应用场景(如文件系统、菜单系统、组织架构)中的经典设计模式,有助于构建灵活、可扩展的系统。原创 2025-01-22 10:41:11 · 315 阅读 · 0 评论 -
Java设计模式 二十三 访问者模式 (Visitor Pattern)
访问者模式通过将操作封装到访问者对象中,实现了操作与对象结构的解耦。它使得可以在不修改对象结构的情况下,为对象添加新的操作,符合开放-封闭原则。不过,访问者模式的使用也带来了类数目的增加,并且在对象结构频繁变化时可能需要频繁修改访问者类,因此需要根据实际需求来权衡是否使用该模式。原创 2025-01-22 10:41:01 · 640 阅读 · 0 评论 -
Java设计模式 二十二 迭代器模式 (Iterator Pattern)
迭代器模式通过提供一个统一的接口来遍历集合对象中的元素,将遍历的逻辑从集合类中分离出来,使得客户端代码不再直接依赖于集合的实现。它可以提高代码的灵活性和可维护性,尤其适用于集合对象需要频繁访问和遍历的场景。不过,迭代器模式可能会增加类的数量,因此需要根据实际需求权衡是否使用该模式。原创 2025-01-22 10:40:51 · 462 阅读 · 0 评论 -
Java设计模式 二十一 中介者模式 (Mediator Pattern)
中介者模式通过引入中介者对象,减少了系统中各个同事类之间的直接依赖,简化了类与类之间的交互。它使得系统更加灵活,可维护性更高。虽然中介者模式提高了系统的可扩展性,但也可能导致中介者本身变得复杂,因此需要合理使用,尤其是在交互较为复杂的系统中。原创 2025-01-22 10:40:41 · 613 阅读 · 0 评论 -
Java设计模式 二十 模板方法模式 (Template Method Pattern)
模板方法模式通过定义算法的框架,将部分步骤的实现推迟到子类,使得子类能够在不改变算法结构的前提下,定制某些具体步骤。它是一个非常适用于处理具有固定执行顺序的算法的设计模式。模板方法模式提高了代码复用性和扩展性,但同时也带来了继承关系的复杂化,需要在合理的场景下使用。原创 2025-01-22 10:40:31 · 849 阅读 · 0 评论 -
Java设计模式 十九 责任链模式 (Chain of Responsibility Pattern)
责任链模式通过将请求沿链传递,让多个对象有机会处理请求,避免了请求发送者与接收者的直接耦合。它使得对象的行为更加灵活,并且能够在不修改客户端代码的前提下,动态地改变处理流程。虽然责任链模式提供了更大的灵活性,但在链较长或处理较复杂时,可能导致处理效率降低,因此需要在适当的场景中使用。原创 2025-01-22 10:40:21 · 840 阅读 · 0 评论 -
Java设计模式 十八 状态模式 (State Pattern)
状态模式通过将每个状态的行为封装在独立的状态对象中,使得对象的行为随状态变化而变化。这种模式可以有效地管理和扩展具有多个状态的对象,特别是在复杂的状态转移和行为执行场景中,它提供了一种灵活且清晰的解决方案。原创 2025-01-22 10:40:10 · 960 阅读 · 0 评论 -
Java设计模式 十七 命令模式 (Command Pattern)
命令模式通过将请求封装成对象,解耦了请求的发送者和接收者,提供了灵活的执行、撤销和组合命令的能力。它在需要解耦请求和执行的场景中非常有用,尤其适用于GUI系统、任务调度、宏命令等应用场景。虽然命令模式可能增加系统的复杂度,但它在结构上更具可扩展性和灵活性,非常适合处理复杂的操作逻辑。原创 2025-01-22 10:39:45 · 639 阅读 · 0 评论 -
Java设计模式 十四 行为型模式 (Behavioral Patterns)
行为型设计模式主要关注于对象之间的交互和责任分配。原创 2025-01-21 16:17:29 · 515 阅读 · 0 评论 -
Java设计模式 十三 代理模式 (Proxy Pattern)
代理模式是一种非常实用的设计模式,它通过引入代理对象来控制对真实对象的访问,从而为客户端提供附加的功能,比如权限控制、延迟加载、日志记录等。代理模式可以透明地为客户端提供真实对象的功能,同时避免客户端直接依赖目标对象,从而使得系统更具灵活性和可扩展性。在实际应用中,代理模式可以应用于许多场景,如远程代理、虚拟代理、保护代理和智能代理等。通过使用代理模式,能够在不改变目标对象的情况下,为目标对象添加额外的功能,同时有效地控制对象的访问。原创 2025-01-21 16:16:13 · 1459 阅读 · 0 评论 -
Java设计模式 十二 享元模式 (Flyweight Pattern)
享元接口定义了对象的共享方法。原创 2025-01-21 16:14:09 · 1114 阅读 · 0 评论 -
Java设计模式 十一 外观模式 (Facade Pattern)
每个子系统代表一个设备,如照明、空调和音响。原创 2025-01-21 16:12:16 · 1073 阅读 · 0 评论 -
Java设计模式 十 装饰模式 (Decorator Pattern)
抽象组件定义通用接口,表示所有文本处理组件的公共行为。原创 2025-01-21 16:11:01 · 956 阅读 · 0 评论 -
Java设计模式 九 桥接模式 (Bridge Pattern)
定义设备的通用操作接口。原创 2025-01-21 16:09:28 · 938 阅读 · 0 评论 -
Java设计模式 八 适配器模式 (Adapter Pattern)
适配器模式是一种解决。原创 2025-01-21 16:08:25 · 883 阅读 · 0 评论 -
Java设计模式 七 结构型模式 (Structural Patterns)
模式作用示例适配器模式使接口不兼容的类可以协同工作桥接模式分离抽象和实现,使两者独立变化图形库(形状与颜色)装饰器模式动态扩展对象的功能外观模式提供子系统的简化接口数据库连接管理享元模式共享对象以减少内存使用字符对象池代理模式控制对象访问或增加额外功能动态代理这些模式通过不同的方式优化代码结构,使系统更加灵活、可维护。根据实际需求选择合适的模式可以有效提升代码质量。原创 2025-01-21 16:07:30 · 613 阅读 · 0 评论 -
Java设计模式 六 原型模式 (Prototype Pattern)
原型模式是解决对象重复创建问题的强大工具,特别适合那些创建成本高或需要快速生成对象的场景。根据具体需求,可以选择浅拷贝或深拷贝的实现方式。尽管实现上可能会稍复杂,但它提供了灵活性和高效性,是值得掌握的重要设计模式之一。原创 2025-01-21 16:06:09 · 933 阅读 · 0 评论 -
Java 设计模式一
设计模式可以帮助开发者以更高效、更易维护的方式解决常见的开发问题。理解并应用这些模式能够使你的代码更具灵活性和扩展性。在实际开发中,我们通常不会盲目使用设计模式,而是根据实际需求来选择合适的模式。原创 2025-01-21 15:57:09 · 742 阅读 · 0 评论 -
Java 设计模式 二 单例模式 (Singleton Pattern)
单例模式是一种非常常见且有用的设计模式,能够确保类只有一个实例,并且提供全局访问点。在 Java 中,推荐使用静态内部类单例模式和枚举单例模式,这两种方式在性能、线程安全性和代码简洁性上都非常优秀。原创 2025-01-21 15:58:35 · 1208 阅读 · 0 评论 -
Java设计模式 五 建造者模式 (Builder Pattern)
产品是需要构建的复杂对象,由多个部分组成。原创 2025-01-21 16:03:21 · 863 阅读 · 0 评论 -
Java设计模式 四 抽象工厂模式 (Abstract Factory Pattern)
是一种创建型设计模式,用于创建一系列相关或相互依赖的对象,而无需指定它们的具体类。抽象工厂模式为产品族的创建提供了一个接口,其核心在于解决“产品族的扩展”和“客户端与具体工厂的解耦”。原创 2025-01-21 16:01:50 · 679 阅读 · 0 评论 -
Java设计模式 三 工厂方法模式 (Factory Method Pattern)
产品接口定义了不同类型产品的公共方法。原创 2025-01-21 16:00:17 · 932 阅读 · 0 评论