• 1.单例模式
      • 2.工厂方法模式
      • 3.抽象工厂模式
      • 4.建造者模式
      • 5.原型模式
      • 6.适配器模式
      • 7.代理模式
      • 8.装饰模式
      • 9.外观模式
      • 10.桥接模式
      • 11.组合模式
      • 12.享元模式
      • 13.观察者模式
      • 14.策略模式
      • 15.命令模式
      • 16.中介者模式
      • 17.备忘录模式
      • 18.模板方法模式
      • 19.迭代器模式
      • 20.状态模式
      • 21.责任链模式
      • 22.解释器模式
      • 23.访问者模式
        • 1.为什么要学习Fyne?
        • 2.第一个小项目
        • 3.处理多窗口问题
        • 4.Go基础速通
        • 5.更复杂的项目
          • Fyne-Markdown编辑器
          • Fyne-趣味整活项目
      • 1.Go的面向对象
      • 2.Go的并发编程
      • 3.Go常用库
      • 4.Go-net-http
      • 5.Go-gRPC
      • 6.Go-Gin
      • 7.Go-GORM
      • 8.Go-Kafka
      • 9.Go-Wire
      • 10.Go-Kratos
      • 1.HTML
      • 2.CSS
      • 3.JavaScript
      • 4.Vue
      • 1.Kubernetes-v1.28.3高可用集群二进制部署(IPv4+IPv6双栈)
      • 2.Kubernetes-v1.30.2高可用集群二进制部署(IPv4+IPv6双栈)
      • 3.升级二进制部署的kubernetes集群
      • 4.Kubernetes核心概念介绍
        • 1.Containerd轻量级or工业级的容器管理工具
        • 1.Docker镜像基本操作和介绍
        • 2.Docker容器镜像国内加速及本地容器镜像仓库搭建
        • 3.Dockerfile介绍
      • 1.容器技术所涉及的Linux内核关键技术
    • 1.Nginx配置小全
    • 第一篇WIKI
      • Syntax Highlighting
      • KaTex
      • Mermaid
      • Alerts
      • Tables
      • Tabs
      • Prism
      • Markdownify
      • KaTex
  • GitHub
  • to navigate
  • to select
  • to close
    • Home
    • DEV
    • 23种设计模式
    On this page
    Code

    23种设计模式

    设计模式是一套理论, 由软件界先辈们总结出的一套可以反复使用的经验, 可以帮助开发人员降低代码耦合度、提高代码的重用性、扩展性和系统可维护性,以及巧妙解决一系列逻辑复杂的问题(运用套路)。然而需要注意的是,过度使用设计模式也可能会导致代码过于复杂和晦涩,因此在实际开发中需要根据具体情况进行选择和应用。

    article

    1.单例模式

    单例模式是一种创建型设计模式, 它的核心思想是保证一个类只有一个实例,并提供一个全局访问点来访问这个实例。

    article

    2.工厂方法模式

    简单工厂模式的核心思想是将产品的创建过程封装在一个工厂类中,把创建对象的流程集中在这个工厂类里面。

    article

    3.抽象工厂模式

    抽象工厂模式也是一种创建型设计模式,提供了一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类

    article

    4.建造者模式

    将对象的构建过程分为多个步骤,并为每个步骤定义一个抽象的接口。具体的构建过程由实现了这些接口的具体建造者类来完成。

    article

    5.原型模式

    原型模式一种创建型设计模式,该模式的核心思想是基于现有的对象创建新的对象,而不是从头开始创建。

    article

    6.适配器模式

    它可以将一个类的接口转换成客户希望的另一个接口,主要目的是充当两个不同接口之间的桥梁,使得原本接口不兼容的类能够一起工作。

    article

    7.代理模式

    代理模式中,允许一个对象(代理)充当另一个对象(真实对象)的接口,以控制对这个对象的访问。

    article

    8.装饰模式

    通常情况下,扩展类的功能可以通过继承实现,但是扩展越多,子类越多,装饰模式可以在不定义子类的情况下动态的给对象添加一些额外的功能。

    article

    9.外观模式

    外观模式Facade Pattern, 也被称为“门面模式”,是一种结构型设计模式,外观模式定义了一个高层接口,这个接口使得子系统更容易使用,同时也隐藏了子系统的复杂性。

    article

    10.桥接模式

    桥接模式是一种结构型设计模式,它的UML图很像一座桥,它通过将【抽象部分】与【实现部分】分离,使它们可以独立变化,从而达到降低系统耦合度的目的。

    article

    11.组合模式

    组合模式是一种结构型设计模式,它将对象组合成树状结构来表示“部分-整体”的层次关系。组合模式使得客户端可以统一处理单个对象和对象的组 合,而无需区分它们的具体类型。

    article

    12.享元模式

    享元模式是一种结构型设计模式,在享元模式中,对象被设计为可共享的,可以被多个上下文使用,而不必在每个上下文中都创建新的对象。

    article

    13.观察者模式

    观察者模式(发布-订阅模式)属于行为型模式,定义了一种一对多的依赖关系,让多个观察者对象同时监听一个主题对象,当主题对象的状态发生变化时,所有依赖于它的观察者都得到通知并被自动更新。

    article

    14.策略模式

    策略模式是一种行为型设计模式,它定义了一系列算法(这些算法完成的是相同的工作,只是实现不同),并将每个算法封装起来,使它们可以相互替换,而且算法的变化不会影响使用算法的客户。

    article

    15.命令模式

    命令模式是一种行为型设计模式,其允许将请求封装成一个对象(命令对象,包含执行操作所需的所有信息),**并将命令对象按照一定的顺序存储在队列中,然后再逐一调用执行,这些命令也可以支持反向操作,进 …

    article

    16.中介者模式

    中介者模式(Mediator Pattern)也被称为调停者模式,是一种行为型设计模式,它通过一个中介对象来封装一组对象之间的交互,从而使这些对象不需要直接相互引用。这样可以降低对象之间的耦合度,使系 …

    article

    17.备忘录模式

    备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不暴露对象实现的情况下捕获对象的内部状态并在对象之外保存这个状态,以 便稍后可以将其还原到先前的状态。

    article

    18.模板方法模式

    模板方法模式(Template Method Pattern)是一种行为型设计模式, 它定义了一个算法的骨架,将**一些步骤的实现延迟到子类。**模板方法模式使得子类可以在不改变算法结构的情况下,重新 …

    article

    19.迭代器模式

    迭代器模式是一种行为设计模式,是一种使用频率非常高的设计模式,在各个语言中都有应用,其主要目的是**提供一种统一的方式来访问一个聚合对象中的各个元素,**而不需要暴露该对象的内部表示。通过迭代器,客户 …

    article

    20.状态模式

    状态模式(State Pattern)是一种行为型设计模式,它适用于一个对象在在不同的状态下有不同的行为时,比如说电灯的开、关、闪烁是不停的状态,状态不同时,对应的行为也不同,在没有状态模式的情况下, …

    article

    21.责任链模式

    责任链模式是一种行为型设计模式,它允许你构建一个对象链,让请求从链的一端进入,然后沿着链上的对象依次处理,直到链上的某个对象能够处理该请求为止。

    article

    22.解释器模式

    解释器模式(Interpreter Pattern)是一种行为型设计模式,它定义了一个语言的文法,并且建立一个【解释器】来解释该语言中的句子。

    article

    23.访问者模式

    访问者模式(Visitor Pattern)是一种行为型设计模式,可以在不改变对象结构的前提下,对对象中的元素进行新的操作。


    © 2024 Maxbit