设计模式

结构型设计模式-适配器 Adapter

# 结构型设计模式-适配器 Adapter date: April 13, 2021 slug: design-pattern-adapter status: Published tags: 设计模式 type: Page ### 简介 适配器模式是一种结构型设计模式, 它能使接口不兼容的对象能够相 ......

创建型设计模式-单例 Singleton

### 简介 全局共用一个对象,好处是对象只实例化一次,减少资源占用 ### 角色 - 单例类 返回本类的唯一一个实例 ### 代码 ```php class Singleton { private static $instances = []; protected function __const ......
设计模式 Singleton 模式

创建型设计模式-原型 Prototype

### 简介 原型模式支持按照一个对象为模板,创建出另一个一模一样的对象。 简单说就是把 A 对象的属性,都赋值到 B 上,注意必须是深拷贝,即 clone 后的 AB 关联的对象是不同的对象。 ### 角色 - 抽象原型类 定义 clone 方法 - 具体实现类 实现 clone 方法 ### 类 ......
设计模式 原型 Prototype 模式

学习笔记-设计模式-创建型模式-工厂模式

### 工厂模式 工厂模式是一种创建者设计模式,细分之下可以分成三类`简单工厂模式`,`工厂方法模式`和`抽象工厂模式`。 #### 简单工厂模式 最简单的工厂模式,它采用静态方法的方式来决定应该应该生产什么商品。 ```java public class StoreFactory { public ......
模式 设计模式 工厂 笔记

设计模式系列文章

本系列文章介绍常见的设计模式,按照设计模式的类别注意介绍。设计模式一般可分为三种大类型:创建型、结构型,行为型。 - **创建型**:讨论的是如何创建实例,将对象的创建和对象的使用分离。 - 工厂方法 Factory Method - 抽象工厂 Abstract Factory - 建造者 Buil ......
设计模式 模式 文章

创建型设计模式-建造者 Builder

### 简介 建造者模式可将对象的初始化转变成一步步配置的过程。如当对象的初始化时有很多可选参数,建造者模式可以定制参数实现对象的创建。好处有: 1. 定制对象参数 2. 针对不同参数,做不同的校验,如当设置了三角形的两个边长,设置第三个边时必须满足两边之和大于第三边的条件。 ### 角色 - Bu ......
设计模式 Builder 模式

创建型设计模式-抽象工厂 Abstract Factory

### 简介 拿工厂方法模式作对比,在工厂方法模式中,一个工厂只能创建一种产品,如椅子工厂只能创建椅子。而抽象工厂可以创建一系列产品,如家具工厂可以创建椅子,桌子,床等等。 抽象工厂类负责定义可以创建的抽象产品类,具体工厂编写不同风格(即各自的业务逻辑)的创建产品的过程。 ### 角色 - 抽象工厂 ......
设计模式 Abstract 工厂 Factory 模式

创建型设计模式-工厂方法 Factory Method

### 简介 工厂方法中,每一个具体工厂类都对应创建一个具体产品类,所有具体工厂类都实现抽象工厂,所有具体产品类都实现抽象产品。 抽象工厂定义了创建抽象产品的方法签名,具体工厂类各自实现各自逻辑,来创建具体的产品。 ### 角色 - 抽象工厂 Abstract Factory 定义创建产品的方法签名 ......
设计模式 工厂 Factory 模式 方法

【23种设计模式】桥接模式(七)

## 前言 【**桥接模式**】是【**结构型**】设计模式的第二个模式,也有叫【桥模式】的,英文名称:**Bridge Pattern**。 大家第一次看到这个名称会想到什么呢?我第一次看到这个模式根据名称猜肯定是连接什么东西的。因为桥在我们现实生活中经常是连接着A地和B地,再往后来发展,桥引申为 ......
模式 设计模式

Web前端设计模式

- [CSS Modules](https://github.com/css-modules) : A CSS Module is a CSS file in which all class names and animation names are scoped locally by defaul ......
设计模式 前端 模式 Web

单例设计模式

### 单例设计模式 #### 基本介绍 类的单例设计模式,就是采取一定的方式保证在整个的软件系统中,对某个类只能有一个对象实例存在,且类提供一个静态方法,用以获取该对象。 例如Hibernate的SessionFactory,它是sql会话工厂,这个对象一定是很重的(创建需要加载很多资源和时间), ......
设计模式 模式

30设计模式(单例模式)/选课系统

作业讲解 编写元类规定对象的所有数值转大写 eg: obj.name = 'jason' print(obj.name) # JASON class MyTypeClass(type): def _ _call_ _(self, *args, **kwargs): args = [i.upper() ......
模式 设计模式 系统

设计模式- 单例模式

单例模式是一种**创建型**设计模式, 可以保证一个类型有且只有一个实例存在 ## 单例模式的适用于什么场景 当一个类在程序运行期间只需要一个实例的时候, 就可以考虑将其做成单例模式 例如一些全局的配置, 用来储存程序运行期间全局的共享配置, 或者可以做一个简单的消息管道, 程序中所有地方只需要这一 ......
模式 设计模式

设计模式:通俗易懂版

🌟设计模式是软件开发领域中的宝藏,它们是程序架构师们多年实践的结晶,能够帮助我们更好地组织代码、提高可维护性和扩展性。 星辰编程理财今天给大家介绍设计模式,我将以轻松、通俗易懂的方式来讲解,无论你是初学者还是资深开发者,都能轻松领略其中的乐趣。 ## 介绍 设计模式是程序架构师们在长期实践中总结出 ......
设计模式 易懂 模式

设计模式-责任链模式

# 责任链模式 ## 模式定义 + 责任链模式属于行为型模式,使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系,将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理为止。 ## 模式角色 + Handler 抽象类:处理请求对象的抽象类 + ConcreteHand ......
模式 设计模式 责任

设计模式

### 1 类与类之间的关系 - 继承(泛化) - 组合:整体对象可以控制成员对象的生命周期,一旦主体对象不存在,成员对象也不存在,整体对象和成员对象之间具有同生共死的关系,例如人的头部与眼、耳朵 - 聚合:成员对象是整体的一部分,但是成员对象可以脱离主体对象独立存在。主体对象析构到的时候成员对象依 ......
设计模式 模式

基于SpringBoot框架实现策略设计模式

策略设计模式属于行为设计模式,这种模式可以使得程序在运行的时候,可以根据场景动态的选择适合的策略逻辑去执行,并且根据不同的需求可以去新增、修改不同的策略逻辑,具有极强的扩展性、可维护性 前几日面试,遇见这么一个业务场景: 饮品订单计价实现 饮品店有6种饮品出售: 椰果奶茶:10元 西米奶茶:10元 ......
设计模式 SpringBoot 框架 策略 模式

设计模式:迭代器模式

设计良好的代码通常会应用许多通用设计模式,迭代器模式就是其一,掌握迭代器的使用可以帮助我们更灵活地编写代码。 ......
模式 设计模式

设计模式学习1 设计原则

# 设计原则 ## 1.开闭原则 **对扩展开放,修改关闭**。在程序需要扩展的时候,不能去修改原有代码,实现一个热插拔的效果。为了使程序的扩展性好,易于维护和升级 为了达到这样的效果,我们需要使用接口和抽象类 ## 2.里氏代换原则 **任何基类可以出现的地方,子类一定可以出现。**也就是子类继承 ......
设计模式 原则 模式

合成复用原则及设计模式概述

#### 合成复用原则 ##### 基本介绍 尽量使用合成或聚合方式,而不是使用继承。 ##### uml类图 ![](https://img2023.cnblogs.com/blog/2883613/202309/2883613-20230901214027810-569491626.png) 此 ......
设计模式 原则 模式

设计模式:观察者模式/发布-订阅模式

深入学习设计模式有助于我们编写设计良好的代码,提高代码的可读性和可维护性,而观察者模式和发布-订阅模式都是软件设计中常用的设计模式,开发者必须对其有较好的掌握 ......
模式 观察者 设计模式

设计模式-创建型-原型模式

title: 设计模式-创建型-原型模式 keywords: 设计模式 cover: [https://s1.ax1x.com/2023/08/31/pP01Vit.png] # sticky: 10 banner: type: img bgurl: https://s1.ax1x.com/2023 ......
模式 设计模式 原型

设计模式-创建型-单例模式

title: 设计模式-创建型-单例模式 keywords: 设计模式 cover: [https://s1.ax1x.com/2023/08/31/pP01Vit.png] # sticky: 10 banner: type: img bgurl: https://s1.ax1x.com/2023 ......
模式 设计模式

【23种设计模式】适配器模式(六)

## 前言 从今天开始我们开始讲【结构型】设计模式,【结构型】设计模式有如下几种:**适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式**。【创建型】的设计模式解决的是对象创建的问题,那【结构型】设计模式解决的是类和对象的组合关系的问题。 今天我们就开始讲【结构型】设计模式里面 ......
模式 设计模式 适配器

Java 设计模式实战系列—单例模式

> 本文首发公众号:小码A梦 单例模式是设计模式中最简单一个设计模式,该模式属于创建型模式,它提供了一种创建实例的最佳方式。 单例模式的定义也比较简单:一个类只能允许创建一个对象或者实例,那么这个类就是单例类,这种设计模式就叫做单例模式。 单例模式有哪些好处: * 类的创建,特别是一个大型的类,只创 ......
模式 设计模式 实战 Java

设计模式学习1 创建者模式

# 创建者模式 创建者模式的主要关注点是“怎样创建对象”,主要特点是“将对象的创建与使用分离” 这样可以降低系统的耦合度,使用者不关心对象的创建细节 创建者模式可以分为: + 单例模式 + 工厂模式 + 抽象工程模式 + 原型模式 + 建造者模式 ## 单例设计模型 涉及到一个单一的类,该类**负责 ......
模式 创建者 设计模式

设计模式-创建型-工厂模式

# 工厂模式 Spring中使用到的工厂模式就是**BeanFactory** ## 1、简单工厂模式 简单工厂模式(Simple Factory Pattern)是指由一个工厂对象决定创建哪一种产品类的实例 简单工厂模式适用于工厂类负责创建的对象较少的场景,且客户端只需要传入工厂类的参数,对于如何 ......
模式 设计模式 工厂

设计模式:代理模式

设计模式是经过检验的、通用的、可复用的代码设计方案,代理模式是其中较为常用的一种,掌握设计模式可以帮助我们编写设计良好的代码。 ......
模式 设计模式

IO设计模式之装饰器模式与适配器模式

装饰器模式 装饰器(Decorator)模式 可以在不改变原有对象的情况下拓展其功能。 装饰器模式通过组合替代继承来扩展原始类的功能,在一些继承关系比较复杂的场景(IO 这一场景各种类的继承关系就比较复杂)更加实用。 举例: 对于字节流来说, FilterInputStream (对应输入流)和Fi ......
模式 设计模式 适配器

2023-02:设计模式

#### 设计模式相关的代码已经提交到gitee中,可以进行下载,建议比照着源码,因为文字描述可能存在信息传递失真的情况发生,看文字不了解的地方可能一看源码就了解了,下载地址:https://gitee.com/season-gitee/design-pattern #### 设计模式已经初步编写完 ......
设计模式 模式 2023 02