免费浏览的网站,怎样搭建网站视频教程,深圳官网网站建设,英文网站建设怎么样行为型设计模式总结Intro行为型模式是将不同的行为代码解耦#xff0c;从而解决特定场景问题的一些经典结构。行为型设计模式主要解决的就是“类或对象之间的交互”问题。行为型设计模式比较多#xff0c;有 11 个#xff0c;几乎占了 23 种经典设计模式的一半。它们分别是从而解决特定场景问题的一些经典结构。行为型设计模式主要解决的就是“类或对象之间的交互”问题。行为型设计模式比较多有 11 个几乎占了 23 种经典设计模式的一半。它们分别是观察者模式、模板模式、策略模式、职责链模式、状态模式、迭代器模式、访问者模式、备忘录模式、命令模式、解释器模式、中介模式。总结责任链Chain of Responsibility多个处理器依次处理同一个请求。一个请求先经过 A 处理器处理然后再把请求传递给 B 处理器B 处理器处理完后再传递给 C 处理器以此类推形成一个链条。链条上的每个处理器各自承担各自的处理职责。模板方法模式Template Method定义一个操作中的算法骨架而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算的结构即使重定义该算法的某些特定步骤。换句话说公用的处理逻辑放在父类中处理不同的处理逻辑放在子类中迭代器Iterator提供一种方法顺序访问一个聚合对象中的各个元素而又不暴露该对象的内部表示。常用于遍历一个集合对象备忘录模式Memento在不破坏封装性的前提下捕获一个对象的内部状态并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。多用于数据备份和恢复的场景。状态模式State当一个对象的行为取决于它的状态并且它必须在运行时根据状态改变它的行为时就可以考虑状态模式观察者模式Observer在对象之间定义一个一对多的依赖当一个对象状态改变的时候所有依赖的对象都会自动收到通知。将观察者和被观察者代码解耦。命令模式 Command将一个请求封装为一个对象从而使得可以用不同的请求进行参数化对请求排队或者记录请求日志以及支持可撤销的操作。中介模式Mediator中介模式定义了一个单独的中介对象来封装一组对象之间的交互。将这组对象之间的交互委派给与中介对象交互来避免对象之间的直接交互。策略模式Strategy策略模式会定义一系列算法从概念上来看所有这些算法完全的都是相同的工作只是实现不同它可以以相同的方式调用所有的算法减少了各种算法类与使用类之间的耦合。解释器模式Interpreter当有一个语言需要解释执行并且你可以将该语言中的句子表示为一个抽象语法树时可以使用解释器模式访问者模式Visitor访问者模式适用于数据结构相对稳定的系统它把数据结构和作用域结构上的操作之间的耦合解脱开使用操作集合可以相对自由地演化。Referencehttps://github.com/WeihanLi/DesignPatterns责任链模式模板方法模式迭代器模式备忘录模式状态模式观察者模式命令模式中介者模式策略模式访问者模式解释器模式访问者模式