设计模式是软件开发中的一种经验总结,它提供了可复用的解决方案来解决常见的软件设计问题。在软件开发领域,设计模式已经成为了一种非常重要的概念。

以下是23种常见的设计模式,按照创建型、行为型和结构性进行分类:

  1. 创建型模式5种(Creational Patterns):

  • 单例模式(Singleton Pattern)

  • 工厂模式(Factory Pattern)

  • 抽象工厂模式(Abstract Factory Pattern)

  • 建造者模式(Builder Pattern)

  • 原型模式(Prototype Pattern)

 2.结构性模式7种(Structural Patterns):

  • 适配器模式(Adapter Pattern)

  • 桥接模式(Bridge Pattern)

  • 组合模式(Composite Pattern)

  • 装饰器模式(Decorator Pattern)

  • 享元模式(Flyweight Pattern)

  • 代理模式(Proxy Pattern)

  • 装饰器模式(Decorator Pattern)

3.行为型模式11种(Behavioral Patterns):

  • 责任链模式(Chain of Responsibility Pattern)

  • 命令模式(Command Pattern)

  • 解释器模式(Interpreter Pattern)

  • 迭代器模式(Iterator Pattern)

  • 中介者模式(Mediator Pattern)

  • 备忘录模式(Memento Pattern)

  • 观察者模式(Observer Pattern)

  • 外观模式(Facade Pattern)

  • 状态模式(State Pattern)

  • 策略模式(Strategy Pattern)

  • 模板方法模式(Template Method Pattern)

  • 访问者模式(Visitor Pattern)

以下是各个模式的意图:

  1. 单例模式(Singleton Pattern):确保一个类只有一个实例,并提供全局访问点。

  2. 工厂模式(Factory Pattern):使用工厂方法代替new操作符来创建对象。

  3. 抽象工厂模式(Abstract Factory Pattern):提供一个接口,用于创建相关或依赖对象族,而不需要指定具体类。

  4. 建造者模式(Builder Pattern):将一个复杂对象的构建与其表示相分离,以使同样的构建过程可以创建不同的表示。

  5. 原型模式(Prototype Pattern):通过复制现有对象来创建新对象。

  6. 适配器模式(Adapter Pattern):将一个类的接口转换成客户希望的另一个接口。

  7. 桥接模式(Bridge Pattern):将抽象部分与它的实现部分分离,使它们都可以独立地变化。

  8. 过滤器模式(Filter Pattern):使用不同的标准来过滤一组对象。

  9. 组合模式(Composite Pattern):将对象组合成树形结构以表示“部分-整体”的层次结构。

  10. 装饰器模式(Decorator Pattern):动态地为对象添加额外的职责。

  11. 享元模式(Flyweight Pattern):共享内存以减少大量小对象的创建。

  12. 代理模式(Proxy Pattern):为其他对象提供一个代理以控制对这个对象的访问。

  13. 责任链模式(Chain of Responsibility Pattern):为解除请求的发送者和接收者之间耦合,将请求沿着处理者链传递。

  14. 外观模式(Facade Pattern):为子系统中的一组接口提供一个一致的界面。

  15. 命令模式(Command Pattern):将请求封装成对象,以便可以用不同的请求对客户进行参数化。

  16. 解释器模式(Interpreter Pattern):给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子。

  17. 迭代器模式(Iterator Pattern):提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。

  18. 中介者模式(Mediator Pattern):用一个中介对象来封装一系列的对象交互。

  19. 备忘录模式(Memento Pattern):是一种行为型设计模式,其主要目的是允许将一个对象的状态保存到另一个对象中,以便在需要时恢复该状态。备忘录模式通过封装一个对象的内部状态,并提供一个接口来操作该状态,从而实现对该状态的存储和恢复。

  20. 访问者模式(Visitor Pattern)是一种行为型设计模式,其主要目的是允许在不改变已有类结构的情况下,动态地添加新的操作。

    访问者模式的核心思想是将对象的结构中的元素作为操作的参数,并通过一个访问者接口来定义这些操作。这样,可以在运行时动态地添加新的操作,而不需要修改原有的代码。

  21. 模板方法模式(Template Method Pattern)是一种行为型设计模式,其主要目的是定义一个操作中的算法骨架,并将一些步骤延迟到子类中实现。

  22. 策略模式(Strategy Pattern)是一种行为型设计模式,其主要目的是定义一组算法,并将每个算法封装起来,使它们可以互相替换。

  23. 状态模式(State Pattern)是一种行为型设计模式,其主要目的是允许一个对象在其内部状态改变时改变它的行为。状态模式的核心思想是将对象的状态作为对象的一部分,并且根据不同的状态来决定对象的行为。在状态模式中,对象不再是一个简单的容器,而是一个复杂的行为机构,它可以根据不同的状态执行不同的操作。

特此声明
本文为正观号作者或机构在正观新闻上传并发布,仅代表该作者或机构观点,不代表正观新闻的观点和立场,正观新闻仅提供信息发布平台。
分享至

还没有评论,快来抢沙发吧!