设计模式
文章平均质量分 75
设计模式
不是杠杠
严于律己,宽以待人。
学无止境
展开
-
解析器模式(Parser Pattern)
解析器模式(Parser Pattern)是一种行为设计模式,用于将输入的数据解析成特定的结构或对象。它通常涉及到一个或多个解析器类,这些类负责处理输入并构建所需的输出结构。解析器模式特别适用于复杂的语法或格式要求,比如编程语言、配置文件或数据协议。原创 2024-02-28 16:54:42 · 312 阅读 · 0 评论 -
访问器模式(Visitor Pattern)
义访问器模式(Visitor Pattern)是一种将数据结构与数据操作分离的设计模式,它可以将对数据的操作添加到数据结构中,而不必修改已有的数据结构。这允许我们定义新的操作,而不需要修改已有的类结构。原创 2024-02-28 10:46:17 · 576 阅读 · 0 评论 -
命令模式(Command Pattern)
命令模式(Command Pattern)是一种行为设计模式,它允许将请求封装成一个对象,从而让你使用不同的请求把客户端与接收者解耦。命令模式的主要目标是实现请求的发送者和接收者之间的解耦,使得发送者不需要知道接收者的具体实现,而接收者也不需要知道请求的具体来源。原创 2024-02-28 08:49:06 · 1255 阅读 · 0 评论 -
职责链模式(Chain of Responsibility Pattern)
职责链模式(Chain of Responsibility Pattern)是一种行为设计模式,它允许对象接收请求并将其沿着处理者链传递,直到有一个处理者处理它为止。职责链模式通过将请求的处理逻辑分布原创 2024-02-27 14:52:57 · 384 阅读 · 0 评论 -
迭代器模式(Iterator Pattern)
迭代器模式(Iterator Pattern)是一种行为型设计模式,它提供了一种方法来顺序访问聚合对象中的各个元素,而不需要暴露该对象的内部表示。迭代器模式使得客户端代码能够独立于聚合对象的具体实现进行遍历操作。原创 2024-02-27 14:43:01 · 488 阅读 · 0 评论 -
组合模式(Composite Pattern)
组合模式(Composite Pattern)是一种结构型设计模式,它允许你将对象组合成树形结构,并且能像使用单独对象一样使用组合对象。组合模式让客户端代码对单个对象和复合对象的使用具有一致性。原创 2024-02-27 14:28:51 · 692 阅读 · 0 评论 -
备忘录模式(Memento Pattern)
备忘录模式(Memento Pattern)是一种行为设计模式,它允许在不破坏封装性的前提下捕获一个对象的内部状态,并在以后将对象恢复到该状态。备忘录模式通常用于实现撤销操作(Undo)或历史记录(History)等功能。原创 2024-02-27 14:16:26 · 581 阅读 · 0 评论 -
状态模式(State Pattern)
状态模式(State Pattern)是一种行为设计模式,它允许对象在其内部状态改变时改变其行为。这意味着,当对象的状态发生变化时,它的行为也会发生变化。状态模式特别适用于行为依赖于其状态的对象,而且当这些状态可以独立于对象的其他部分进行变化时。原创 2024-02-27 14:05:27 · 615 阅读 · 0 评论 -
中介者模式(Mediator Pattern)
中介者模式(Mediator Pattern)是一种行为设计模式,它用于将一组对象的交互行为封装在一个中介者对象中,从而减少对象之间的直接耦合。这种模式提供了一种集中式的控制方式,通过中介者对象来协调不同对象之间的交互。原创 2024-02-27 13:39:25 · 383 阅读 · 0 评论 -
适配器模式(Adapter Pattern)
适配器模式是一种结构型设计模式,它允许将一个类的接口转换成客户希望的另一个接口。这种模式通常用于解决接口不兼容的问题。适配器模式包括三个角色:目标接口(Target)、适配器(Adapter)和被适配者(Adaptee)原创 2024-02-26 23:29:21 · 746 阅读 · 0 评论 -
代理模式(Proxy Pattern)
代理模式(Proxy Pattern)是一种结构型设计模式,其目的是为其他对象提供一个代理或占位符,以控制对这个对象的访问。代理类通常在客户端和目标对象之间起到中介的作用,用于控制对目标对象的访问,并在必要时添加额外的功能。原创 2024-02-26 23:20:21 · 849 阅读 · 0 评论 -
门面模式(Facade Pattern)
门面模式(Facade Pattern)是一种结构型设计模式,旨在为一个复杂子系统提供一个简单的接口。它提供了一个高层接口,使得客户端可以更容易地使用这个子系统,而不需要了解其内部的复杂性。原创 2024-02-26 23:09:28 · 385 阅读 · 0 评论 -
享元模式(Flyweight Pattern)
享元模式(Flyweight Pattern)是一种结构型设计模式,其主要目的是通过共享尽可能多的数据来减少内存使用和提高性能。它通常在需要创建大量相似对象的情况下使用,以减少对象的数量和内存消耗。原创 2024-02-26 22:42:40 · 475 阅读 · 0 评论 -
单例模式(singleton)
单例模式是一种创建型设计模式,其目的是确保一个类只有一个实例,并提供一个全局访问点。这样可以确保在整个应用程序中只存在一个实例,避免了多次实例化造成的资源浪费,并且提供了一个统一的访问点以便于对该实例的管理。原创 2024-02-26 18:00:54 · 2146 阅读 · 0 评论 -
构建模式(Build Pattern)
"构建模式"(Build Pattern)通常指的是一种设计模式,它用于处理对象的构建过程,将构建过程与其表示过程分离,使得同样的构建过程可以创建不同的表示。在构建模式中,通常有一个“导演”(Director)对象负责控制构建过程,而具体的构建步骤则由一组“构建器”(Builder)对象来完成。构建模式可以是原型模式(Prototype Pattern)的一个变体,尤其是在处理构建复杂对象时,这些对象可能包含许多属性,并且构建过程可能涉及多个步骤。原创 2024-02-23 15:09:29 · 665 阅读 · 0 评论 -
原型模式(Prototype Pattern)
原型模式是一种创建型设计模式,其核心思想是通过复制现有对象来创建新对象,而不是通过实例化类来创建对象。这种方式可以在不知道具体对象类型的情况下创建新的实例,同时还能够避免耦合性,使得系统更灵活。原创 2024-02-23 13:40:24 · 527 阅读 · 0 评论 -
工厂方法(Factory Methods),抽象工厂(Abstract Factory )
工厂方法(Factory Methods),抽象工厂(Abstract Factory )原创 2024-02-23 11:18:34 · 1176 阅读 · 0 评论 -
桥模式(Bridge Pattern)
桥模式是一种结构型设计模式,其主要目的是将抽象部分与实现部分分离,使它们可以独立变化。这样可以更灵活地组合不同的抽象部分和实现部分,而不需要修改已有的代码。原创 2024-02-22 18:04:54 · 503 阅读 · 0 评论 -
装饰模式(Decorator Pattern)
装饰模式(Decorator Pattern)是一种结构型设计模式,它允许通过将对象包装在装饰器类的实例中来动态地添加新的行为和责任。这种模式可以在不修改现有代码的情况下,灵活地扩展对象的功能。原创 2024-02-22 11:12:14 · 783 阅读 · 0 评论 -
设计模式之模板方法
定义一个操作中的算法的骨架 (稳定),而将一些步骤延迟(变化)到子类中。Template Method使得子类可以不改变(复用)一个算法的结构即可重定义(override 重写)该算法的某些特定步骤。——《设计模式》GoF理解:模板方法就是将固定算法流程实现放在父类中实现,将固定流程中的可能变化的步骤定义为虚方法,子类可重写(实现晚绑定)。对于不变的步骤,和算法的实现流程,子类不必关心。子类也不需要关心整个算法实现流程。实现子类的稳定。原创 2024-02-21 15:13:26 · 687 阅读 · 0 评论 -
面向对象设计模式简介
每一个设计模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复的劳动”。原创 2023-08-26 16:27:14 · 18 阅读 · 0 评论 -
观察者模式(Observer Pattern)
观察者模式(Observer Pattern)是一种行为设计模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。当主题对象状态发生变化时,它的所有依赖者(观察者)都会自动收到通知并更新。原创 2021-12-16 15:06:30 · 8 阅读 · 0 评论 -
工厂模式
工厂方法(factory method)对象创建 模式通过 对象创建 模式绕开new。来避免对象创建(new)过程中所导致的紧耦合(依赖具体类),从而支持对象创建的稳定。它是接口抽象之后的第一步工作。典型模式:factory methodabstract factoryprototypebuilder动机在软件系中,经常面临创建对象的工作,由于需求的变化,需要创建的对象的具体类型经常变化。如何应对这种变化?如何绕过常规的对象创建方法,提供一种“封装机制”来避免客户程.原创 2021-12-16 16:01:59 · 51 阅读 · 0 评论 -
策略模式(Strategy)
策略模式是一种行为设计模式,它允许在运行时选择算法的行为。这种模式定义了一系列算法,将它们封装在独立的类中,并且使它们可以互相替换。通过这种方式,客户端代码可以在不更改其结构的情况下选择所需的算法。原创 2021-11-22 19:41:31 · 7 阅读 · 0 评论 -
设计模式之模板方法
设计模式之模板方法模板方法在变化和稳定中 找隔离点原创 2021-10-14 21:11:18 · 108 阅读 · 0 评论