<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[haoxin963的专栏]]></title><description><![CDATA[学无止尽]]></description><link>https://blog.youkuaiyun.com/haoxin963</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; haoxin963]]></copyright><item><title><![CDATA[日志规范-JAVA]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/142213304</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/142213304</guid><author>haoxin963</author><pubDate>Fri, 13 Sep 2024 16:03:15 +0800</pubDate><description><![CDATA[日志，一个或多个由服务器自动创建和维护的日志文件，其中包含其所执行活动的列表。一个打印良好的日志文件可为开发人员提供精确的系统记录，可辅助开发人员定位到系统错误发生的详情及根源。在 Java 应用程序中，通常使用日志文件来记录应用程序运行过程中的重要逻辑参数及异常错误，辅之日志采集系统ELK构建系统监控体系。]]></description><category></category></item><item><title><![CDATA[访问者模式 (Visitor Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572968</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572968</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:25:23 +0800</pubDate><description><![CDATA[访问者模式（Visitor Pattern）是一种行为型设计模式，用于将算法与其作用于的对象结构分离。这种模式主要用于执行操作或应用过程，这些操作需要在不同类型的对象上执行，同时避免让这些对象的类变得过于复杂。关键组成部分访问者（Visitor）一个接口或抽象类，定义了对不同类型元素（Element）的访问操作。实现了每种类型元素的操作，是将操作逻辑从元素类中分离出来的关键所在。元素（Element）定义了一个接受访问者的方法（通常为accept），该方法允许访问者对象访问元素。]]></description><category></category></item><item><title><![CDATA[模板方法模式 (Template Method Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572932</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572932</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:25:08 +0800</pubDate><description><![CDATA[模板方法模式（Template Method Pattern）是一种行为型设计模式，它在一个方法中定义一个算法的骨架，将一些步骤的实现延迟到子类。通过这种方式，模板方法允许子类在不改变算法结构的情况下，重新定义算法的某些特定步骤。抽象类（Abstract Class）：定义模板方法，以及算法的骨架。它可以包含具体方法、抽象方法和钩子（hook）方法。具体子类（Concrete Class）：实现抽象类中定义的抽象方法和钩子方法，从而完成算法中特定子部分的实现。]]></description><category></category></item><item><title><![CDATA[策略模式 (Strategy Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572908</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572908</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:24:49 +0800</pubDate><description><![CDATA[策略模式（Strategy Pattern）是一种行为型设计模式，它定义了算法家族，分别封装起来，让它们之间可以互相替换。策略模式使得算法的变化独立于使用算法的客户。上下文（Context）：用来维护对某个策略对象的引用。策略接口（Strategy）：定义了一个公共接口，各种不同的算法以不同的方式实现这个接口。具体策略（Concrete Strategy）：实现策略接口的具体算法。]]></description><category></category></item><item><title><![CDATA[状态模式 (State Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572884</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572884</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:24:29 +0800</pubDate><description><![CDATA[状态模式（State Pattern）是一种行为型设计模式，它允许一个对象在其内部状态改变时改变它的行为。这种模式将每个状态的行为封装到对应的状态类中，使得上下文（Context）的行为随着其内部状态的改变而改变，看起来像是改变了其类。]]></description><category></category></item><item><title><![CDATA[观察者模式 (Observer Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572831</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572831</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:24:12 +0800</pubDate><description><![CDATA[观察者模式（Observer Pattern）是一种行为型设计模式，允许一个对象（称为主题）维护一系列依赖于它的对象（称为观察者），并在主题状态改变时自动通知它们。这种模式主要用于实现事件处理系统、消息发布/订阅系统等，能够促进对象间的松耦合。]]></description><category></category></item><item><title><![CDATA[备忘录模式 (Memento Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572799</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572799</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:23:56 +0800</pubDate><description><![CDATA[备忘录模式（Memento Pattern）是一种行为型设计模式，它提供了一种方式来恢复对象到其先前状态。在不破坏对象封装性的前提下，备忘录模式捕获并外部化对象的内部状态，以便稍后可以将对象恢复到这个状态。这个模式通常用于实现撤销操作或实现事务功能，其中的状态回滚相当于撤销。发起人（Originator）：负责创建一个包含其当前内部状态的备忘录，并可以使用备忘录恢复其内部状态。备忘录（Memento）：负责存储发起人的内部状态，并防止发起人以外的对象访问备忘录。负责人（Caretaker）]]></description><category></category></item><item><title><![CDATA[中介者模式 (Mediator Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572711</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572711</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:23:39 +0800</pubDate><description><![CDATA[中介者模式（Mediator Pattern）是一种行为型设计模式，它通过引入一个中介对象来简化多个对象之间的复杂交互。这种模式的目的是减少通信对象之间的直接引用，从而减少它们之间的耦合度，使得可以独立地改变它们之间的交互。中介者（Mediator）接口：定义了通信的接口。具体中介者（Concrete Mediator）：实现中介者接口，并协调各个对象之间的交互。同事类（Colleague）：需要通信的对象，它们不直接交互，而是通过中介者来进行交互。]]></description><category></category></item><item><title><![CDATA[迭代器模式 (Iterator Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572647</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572647</guid><author>haoxin963</author><pubDate>Fri, 24 Nov 2023 17:23:21 +0800</pubDate><description><![CDATA[迭代器模式（Iterator Pattern）是一种行为型设计模式，用于顺序访问集合对象的元素，而无需知道集合对象的底层表示。迭代器模式将遍历集合的责任从集合对象转移到迭代器对象上，这简化了集合接口和实现，同时也使得遍历不同的集合类型统一和标准化。迭代器（Iterator）接口：定义访问和遍历元素的接口。具体迭代器（Concrete Iterator）：实现迭代器接口，并负责遍历集合的具体对象。集合（Aggregate）接口：定义创建迭代器对象的接口。]]></description><category></category></item><item><title><![CDATA[解释器模式 (Interpreter Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572609</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572609</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 11:11:00 +0800</pubDate><description><![CDATA[解释器模式（Interpreter Pattern）是一种行为型设计模式，用于定义一种语言的语法表示，并提供一个解释器来处理这种语法。这种模式用于实现语言解释器，通常用于专业领域或复杂文本处理中。在解释器模式中，通常会为语言的每个规则定义一个类。抽象表达式（Abstract Expression）：定义解释操作的接口，通常包含一个解释方法。终结符表达式（Terminal Expression）：实现与文法中的终结符相关的解释操作。非终结符表达式（Nonterminal Expression）]]></description><category></category></item><item><title><![CDATA[命令模式 (Command Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572584</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572584</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 11:10:17 +0800</pubDate><description><![CDATA[命令模式（Command Pattern）是一种行为型设计模式，它将一个请求封装为一个对象，从而允许用户使用不同的请求、队列或日志来参数化其他对象。命令模式也支持可撤销的操作。主要目的是将命令的发送者和接收者解耦，引入了命令对象来在发送者和接收者之间充当中介。命令（Command）接口：声明执行操作的接口。具体命令（Concrete Command）：实现命令接口，定义了接收者和行为之间的绑定关系。调用者通过执行命令来执行相应的操作。接收者（Receiver）：知道如何实施与执行一个请求相关的操作。]]></description><category></category></item><item><title><![CDATA[责任链模式 (Chain of Responsibility Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572564</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572564</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 11:09:34 +0800</pubDate><description><![CDATA[责任链模式是一种行为型设计模式，用于在对象间建立一条处理请求的链。它允许多个对象有机会处理请求，从而减少请求的发送者和接收者之间的耦合。在责任链模式中，每个接收者包含对另一个接收者的引用，形成一条链。如果一个对象不能处理请求，它会将请求传递给链中的下一个对象，直至链的末端。责任链模式由多个处理器（或接收者）组成，每个处理器决定自己是否处理请求或将其传递给链上的下一个处理器。这种模式实现了发送者和接收者之间的解耦，同时允许动态地调整链中的处理器。处理器（Handler）]]></description><category></category></item><item><title><![CDATA[代理模式 (Proxy Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134572538</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134572538</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 11:08:48 +0800</pubDate><description><![CDATA[代理模式（Proxy Pattern）是一种结构型设计模式，它通过提供一个代理（或称代表）对象来控制对另一个对象的访问。这种模式创建了一个代理对象，用来代表实际对象的功能，从而可以在不直接访问实际对象的情况下进行操作。代理模式的核心思想是将客户端与实际执行功能的对象分离，引入一个中介层（代理层），由代理对象来决定是否和如何访问实际对象。这种间接层可以用于多种目的，比如控制访问、延迟初始化、实现安全检查、添加额外的功能（例如日志记录、事务处理等）。主题（Subject）接口。]]></description><category></category></item><item><title><![CDATA[享元模式 (Flyweight Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571287</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571287</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:34:53 +0800</pubDate><description><![CDATA[享元模式（Flyweight Pattern）是一种结构型设计模式，用于优化性能和内存使用。它通过共享尽可能多的相似对象来减少内存占用，特别是在有大量对象时。这种模式通常用于减少应用程序中对象的数量，并在多个对象间共享尽可能多的状态。内在状态（Intrinsic State）这部分状态是对象共享的。享元对象的内在状态不依赖于享元对象的上下文，即它们是不变的。这使得一个享元对象可以在不同的上下文中共享。外在状态（Extrinsic State）]]></description><category></category></item><item><title><![CDATA[外观模式 (Facade Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571266</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571266</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:34:08 +0800</pubDate><description><![CDATA[外观模式（Facade Pattern）是一种结构型设计模式，它通过提供一个统一的高层接口来简化复杂子系统或库的访问。这种模式的关键在于，它创建了一个外观类，这个类封装了对子系统的一系列复杂交互，使得子系统更易于使用和理解。简化复杂系统的接口：外观模式为复杂的内部子系统提供了一个简单的外部接口。这样，客户端在使用这些子系统时只需要与外观类交互，而不需要了解或直接访问系统的复杂内部工作。降低子系统与客户端之间的耦合度：客户端通过外观类与子系统交互，减少了与子系统内部多个模块的直接依赖。]]></description><category></category></item><item><title><![CDATA[装饰器模式 (Decorator Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571246</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571246</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:33:16 +0800</pubDate><description><![CDATA[装饰器模式（Decorator Pattern）是一种结构型设计模式，它允许动态地向一个对象添加额外的功能，而不改变其结构。这种模式通过创建一个装饰器类，用来包裹实际对象，从而提供额外的行为。在装饰器模式中，可以在运行时为对象添加新的行为，而无需修改原始对象的代码。这为扩展对象的功能提供了更大的灵活性，尤其是在遵循开闭原则（对扩展开放，对修改封闭）的情况下。组件接口（Component）：定义了一个对象接口，可以动态地给这些对象添加职责（行为）。具体组件（Concrete Component）]]></description><category></category></item><item><title><![CDATA[组合模式 (Composite Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571224</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571224</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:32:28 +0800</pubDate><description><![CDATA[组合模式（Composite Pattern）是一种结构型设计模式，用于将对象组合成树形结构以表示部分-整体的层次关系。这种模式创建了一种包含单个对象和组合对象的统一接口，使得客户端可以以统一的方式处理单个对象和组合对象。统一的接口：组合模式提供了一个统一的接口来管理单个对象和组合对象。这个接口可以是抽象类或者接口。树形结构：组合模式允许客户以一致的方式处理单个对象和组合对象。例如，图形界面的组件（如窗口、面板、按钮）可以形成一种树形结构，其中每个组件既可以是单个元素，也可以是包含其他元素的容器。]]></description><category></category></item><item><title><![CDATA[桥接模式 (Bridge Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571197</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571197</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:31:37 +0800</pubDate><description><![CDATA[桥接模式（Bridge Pattern）是一种结构型设计模式，用于将抽象部分与其实现部分分离，使它们可以独立地变化。这种模式通过创建一个桥接接口，将抽象类和其实现类解耦，使得修改或扩展独立的抽象和实现变得更加容易。抽象化（Abstraction）定义抽象类的接口。它保持一个指向实现化对象的引用，并且由子类实现这个接口。精化抽象化（Refined Abstraction）扩展或细化由抽象化定义的接口。实现化（Implementor）定义实现类的接口。]]></description><category></category></item><item><title><![CDATA[适配器模式 (Adapter Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571158</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571158</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:30:45 +0800</pubDate><description><![CDATA[适配器模式（Adapter Pattern）是一种结构型设计模式，它允许不兼容的接口之间能够一起工作。这种模式涉及到一个单一的类，该类负责加入独立的或不兼容的接口功能。基本上，适配器模式就像现实生活中的电源适配器一样，它在两个不同的接口之间建立一个兼容的接口，使得原本由于接口不兼容而不能一起工作的类可以一起工作。类适配器：使用多重继承对一个接口与另一个接口进行匹配。类适配器通过继承来实现适配器功能。对象适配器：使用组合来连接两个不兼容的接口。]]></description><category></category></item><item><title><![CDATA[建造者模式 (Builder Pattern)]]></title><link>https://blog.youkuaiyun.com/haoxin963/article/details/134571083</link><guid>https://blog.youkuaiyun.com/haoxin963/article/details/134571083</guid><author>haoxin963</author><pubDate>Thu, 23 Nov 2023 10:28:13 +0800</pubDate><description><![CDATA[建造者模式（Builder Pattern）是一种创建型设计模式，它用于构建复杂对象的表示。这种模式将一个复杂对象的构建与其表示分离，使得同样的构建过程可以创建不同的表示。建造者模式通常用于解决复杂对象的逐步构建问题。分离复杂对象的构造和表示允许客户端不必了解内部组成的细节，就可以构造复杂的对象。通常用于创建具有多个部分的对象，特别是当这些部分需要通过多个步骤进行构建时。提供控制复杂性的方法。]]></description><category></category></item></channel></rss>