首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
设计模式
Bummon
创建于2023-08-02
订阅专栏
设计模式及其应用实例
等 3 人订阅
共23篇文章
创建于2023-08-02
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【跟着Bummon重学设计模式】代理模式
所谓的代理者是指一个类别可以作为其它东西的接口。代理者可以作任何东西的接口:网上连接、存储器中的大对象、文件或其它昂贵或无法复制的资源。
【跟着Bummon重学设计模式】备忘录模式
备忘录模式 一、定义 二、角色分类 原发器角色(Originator) 其为普通类,可以创建一个备忘录,并存储其当前的内部状态,也可以通过备忘录来恢复其内部状态,一般会将需要保存内部状态的类设计为原发
【跟着Bummon重学设计模式】装饰器模式
装饰器模式 一、定义 二、角色分类 装饰角色(Decorator) 一般是一个抽象类,继承或实现了抽象构件,在它的属性里有一个变量指向抽象构件 具体装饰角色(Concrete Decorator) C
【跟着Bummon重学设计模式】中介者模式
中介者模式 一、定义 二、角色分类 抽象中介者(Mediator) 声明了同时对象到中介者对象的接口 具体中介者(Concrete Mediator) 其为具体中介者的子类,从具体的同事对象接收消息,
【跟着Bummon重学设计模式】设计模式七大原则
七大原则 设计原则的定义及使用频率 名称 定义 使用频率 单一职责原则(SRP) 一个类应只负责一项职责 ⭐⭐⭐⭐ 开闭原则(OCP) 程序的实体应对扩展开放,对修改关闭。::开闭原则的关键在于抽象化
【跟着Bummon重学设计模式】迭代器模式
迭代器模式 一、定义 二、角色分类 抽象迭代器(Iterator) 定义了访问和遍历元素的接口,声明了用于遍历数据元素的方法 具体迭代器(Concrete Iterator) 实现了抽象迭代器,完成遍
【跟着Bummon重学设计模式】组合模式
组合模式 一、定义 二、角色分类 抽象构件(Component) 声明了参与组合对象的共有方法和属性,定义了访问其子构件的方法 叶子构件(Leaf) 其表示叶子节点,叶子节点没有子节点,是遍历的最小单
【跟着Bummon重学设计模式】享元模式
享元模式 一、定义 二、角色分类 抽象享元类(Flyweight) 通常是一个接口或抽象类,其声明了具体享元类的公共方法,这些方法可以向外界提供享元对象的内部数据或内部状态,同时也可以通过这些方法来设
【跟着Bummon重学设计模式】状态模式
状态模式 一、定义 二、角色分类 抽象状态角色(State) 通常为接口或抽象类,负责定义对象的状态,并封装上下文对象角色以实现状态的切换 具体状态角色(Concrete State) 抽象状态角色的
【跟着Bummon重学设计模式】单例模式
单例模式 一、定义及注意事项 也就是说,一个类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。 在我们使用单例模式的时候需
【跟着Bummon重学设计模式】访问者模式
访问者模式 一、定义 二、角色分类 抽象访问者(Visitor) 通常是接口或抽象类,给具体元素定义了访问的方法,传入的参数类型是具体元素的实现类 具体访问者(Concrete Visitor) 其是
【跟着Bummon重学设计模式】模板方法模式
模板方法模式 一、定义 二、角色分类 抽象类(Abstract Class) 定义了一系列的基本操作,这些具体操作可以是具体的,也可以是抽象的,每一个基本操作都对着算法的一个步骤,在其子类中可以重写或
【跟着Bummon重学设计模式】解释器模式
解释器模式 一、定义 二、角色分类 抽象表达式/抽象解释器(Abstract Expression) 声明了一个所有具体表达式都要实现的抽象接口或抽象类,接口中存在一个解释操作的方法 终止符表达式(T
【跟着Bummon重学设计模式】工厂模式
工厂模式 一、定义 工厂模式为我们提供了一种创建对象的最佳方式,最大的特点是我们在创建对象的时候不会对客户端暴露创建逻辑,通过一个共同的接口去指向新创建的对象。 二、实现方式 工厂模式是一种比较统概的
【跟着Bummon重学设计模式】适配器模式
适配器模式 一、定义 假如我们已经定义了一个方法,后续由于各种场景要求我们改造该方法,但是又不能影响到其他调用到这个方法的代码,这时候我们就可以使用适配器模式来进行包装,以符合我们的业务需求。 二、角
【跟着Bummon重学设计模式】命令模式
命令模式 一、定义 二、角色分类 抽象命令者(Command) 通常情况下为接口或抽象类,用于定义命令的接口,声明要执行的方法 具体命令者(Concrete Command) 其为命令者的子类,通常会
【跟着Bummon重学设计模式】桥接模式
桥接模式 一、定义 二、角色分类 抽象化角色(Abstraction) 它是一个抽象类或接口,定义了代表抽象概念的基本操作。通常情况下,抽象化角色会调用实现化的角色从而起到桥接的作用 扩展抽象化角色(
【跟着Bummon重学设计模式】责任链模式
责任链模式 一、定义 二、角色分类 抽象处理者(Handler) 定义了处理请求的接口或者抽象类,并提供了处理请求的的方法和设置下一个处理者的方法 具体处理者(Concrete Handler) 它是
【跟着Bummon重学设计模式】策略模式
策略模式 一、定义 二、角色分类 上下文角色(Context) 上层访问策略的入口,它具有抽象策略角色的引用 抽象策略角色(Strategy) 它是接口或抽象类,其定义了一个算法簇,具体策略组必须要拥
【跟着Bummon重学设计模式】观察者模式
观察者模式 一、定义 二、角色分类 目标角色(Subject) 被观察者,其为被观察的对象,可以是接口、抽象类或具体的类,但是因为很多情况下容易和其他模式混合使用,所以一般使用抽象类的情况多一些 具体
下一页