首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
设计模式
开发者充电站
创建于2022-01-14
订阅专栏
23种经典设计模式
等 1 人订阅
共16篇文章
创建于2022-01-14
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
设计模式之职责链模式
职责链模式的定义是:将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止。
设计模式之策略模式
有人说策略模式的作用是避免 if-else 分支判断逻辑。实际上,这种认识是很片面的。策略模式主要的作用还是解耦策略的定义、创建和使用,控制代码的复杂度,让每个部分都不至于过于复杂、代码量过多。
设计模式之模板模式
模板方法模式在一个方法中定义一个算法骨架,并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变算法整体结构的情况下,重新定义算法中的某些步骤。这里的算法可以理解为我们的业务逻辑。
设计模式之观察者模式
观察者模式的应用场景非常广泛,小到代码层面的解耦,大到架构层面的系统解耦,再或者一些产品的设计思路,都有这种模式的影子,比如,邮件订阅、RSS Feeds,本质上都是观察者模式。
设计模式之享元模式
享元模式是一个不太常用的设计模式,享元模式即共享的单元,其意图是复用对象,节省内存,前提是享元对象是不可变对象。
设计模式之组合模式
组合模式是一种结构型设计模式,在 GoF 的《设计模式》一书中,组合模式是这样定义的:将一组对象组织成树形结构,以表示一种“部分 - 整体”的层次结构。组合让客户端(“客户端”代指代码的使用者。)可以
设计模式之门面模式
门面模式,也叫外观模式,在 GoF 的《设计模式》一书中,门面模式是这样定义的:门面模式为子系统提供一组统一的接口,定义一组高层接口让子系统更易用。
设计模式之适配器模式
使用场景 现有类与目标“接口不兼容”,有以下几种场景: 封装有缺陷的接口设计 统一多个类的接口设计 替换依赖的外部系统
设计模式之装饰器模式
「这是我参与2022首次更文挑战的第6天,活动详情查看:2022首次更文挑战」。 应用场景 装饰器模式主要解决继承关系过于复杂的问题,通过组合来替代继承。它主要的作用是给原始类添加增强功能。 装饰器模
设计模式之桥接模式
「这是我参与2022首次更文挑战的第5天,活动详情查看:2022首次更文挑战」。 在 GoF 的《设计模式》一书中,桥接模式被定义为:“将抽象和实现解耦,让它们可以独立变化。
设计模式之代理模式
代理模式的应用场景 业务系统的非功能性需求开发。比如:监控、统计、鉴权、限流、事务、幂等、日志。我们将这些附加功能与业务功能解耦,放到代理类中统一处理,让程序员只需要关注业务方面的开发。 RPC、缓存
设计模式之原型模式
使用场景 如果 「对象的创建成本比较大」,而 「同一个类的不同对象之间差别不大」(大部分字段都相同),在这种情况下,我们可以利用对已有对象(原型)进行复制(或者叫拷贝)的方式来创建新对象,以达到节省创
设计模式之建造者模式
使用场景 对象的构建有很多必填参数,如果使用构造函数会导致参数列表过长难以使用 构造参数之间有依赖关系,比如设置了minAge就必须设置maxAge,且minAge小于等于maxAge 类的属性一旦被
设计模式之工厂模式
工厂模式可以细分为:简单工厂、工厂方法和抽象工厂三种模式 使用场景 总体而言工厂模式的使用场景分为两种: 单个对象的创建过程比较复杂,如需要做复杂初始化操作的对象 需要根据不同的类型创建不同的对象 针
设计模式之单例模式
单例设计模式理解起来非常简单。一个类只允许创建一个对象(或者实例),那这个类就是一个单例类,这种设计模式就叫单例模式。 使用场景 处理资源访问冲突 下面的示例中如果每个类都创建一个 Logger 实例
设计模式之设计原则
单一职责原则(SRP) 概念 单一职责原则的英文是 Single Responsibility Principle,缩写为 SRP。 「一个类只负责完成一个职责或者功能」。不要设计大而全的类,要设计粒