刷新
Java课堂|餐饮的本质(设计模式之工厂模式)

博主头像 # 前言 本文主要讲述**工厂模式**,文中使用通俗易懂的案例,使你更好的学习本章知识点并理解原理,做到有道无术。 # 一.什么是工厂模式 工厂模式是23种设计模式中**创建型模式**的一种,它是一个最简单的对象创建管理方式,根据调用方传递的类型来创建对象并返回。封装了对象创建的过程,降低了程序模块 ...

解释器模式(Interpreter Pattern)

博主头像 ### 解释器模式(Interpreter Pattern) #### 一、定义 解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等。 给定一 ...

命令模式(Command Pattern)

博主头像 ### 命令模式(Command Pattern) #### 一、定义 命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。 将一个请求封 ...

观察者模式(Observer Pattern)

博主头像 ## 一、模式动机 >观察者模式用于描述对象之间的依赖关系,它引入了观察者和观察目标两类不同的角色,由于提供了抽象层,它使得增加新的观察者和观察目标都很方便。观察者模式广泛应用于各种编程语言的事件处理模型中,Java语言也提供了对观察者模式的全面支持。 - 一个对象的状态或行为的变化将导致其他对象的 ...

迭代器模式(Interator Pattern)

博主头像 ## 一、模式动机 迭代器模式(Iterator Pattern)是一种使用频率非常高的行为型设计模式,**迭代器**用于**对一个聚合对象进行遍历**。通过**引入迭代器**可以**将数据的遍历功能从聚合对象中分离出来**,**聚合对象只负责存储数据**,而**遍历数据由迭代器来完成**,简化了聚 ...

【程序员日记】---从业务编排到低代码

博主头像 之前总聊微服务,今天换一个话题---低代码。低代码这个词也是最近这几年很火的概念,尤其是遇到大环境下行,很多大厂和互联网那个公司也在慢慢在低代码方向发力,当然,对于传统项目交付型的软件公司,低代码也具有相当大的吸引力。 ...

实际业务中使用策略模式对代码进行重构

博主头像 一.业务描述 最近在负责公司一个语音的微服务模块优化,这个模块主要的业务是:1.天猫精灵、小度、若琪、小京鱼、小爱同学、思必驰这些第三方音响对我们的用户进行oauth2/JWT授权; 2.这些第三方音响服务调用我们的设备发现接口对公司的设备信息在第三方平台进行一个存储;3.第三方平台对用户发出的语音 ...

策略模式(Strategy Pattern)

博主头像 策略模式 一、介绍 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 意图:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。 主要解决:在有多种算法相似的情况下,使用 if...else 所带来的复杂和难以维护 ...

java设计模式【工厂方法模式】

博主头像 java设计模式【工厂方法模式】 工厂方法模式 工厂方法模式(FACTORY METHOD)是一种常用的类创建型设计模式,此模式的核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用和方便后期维护拓展的目的。它的核心结构有四个角色,分别是抽象工厂;具体工厂;抽 ...

java设计模式【单例模式】

博主头像 Java设计模式【单例模式】 单例模式 单例模式(Singleton Pattern)是一种创建型设计模式,其主要目的是确保一个类只有一个实例,并提供对该实例的唯一访问点。 优缺点 优点: 提供了对唯一实例的受控访问。 由于在系统内存中只存在一个对象,因此可以节约系统资源。 缺点: 单例类的扩展有很 ...

java设计模式简介(总结)

博主头像 Java设计模式简介(总结) 什么是设计模式 Java设计模式是一组经过验证的解决特定问题的编程技术,这些技术可以帮助开发人员快速、有效地开发高质量的软件。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 设计模式分类 设计模式一般分为三大类:创建型、结构型、行为型,具体分类如 ...

结构型模式(Structural Pattern)

博主头像 >模式介绍 结构型模式(Structural Pattern)的主要目的就是**将不同的类和对象组合在一起,形成更大或者更复杂的结构体**。该模式并不是简单地将这些类或对象摆放在一起,而是要**提供它们之间的关联方式**。不同的结构型模式从不同的角度来组合类或对象,它们尽可能满足各种面向对象设计原则 ...

原型模式(Prototype Pattern)

博主头像 # 原型模式 ## 一、模式动机 原型模式(Prototype Pattern)结构较为简单,它是一种特殊的创建型模式,**当需要创建大量相同或者相似对象时**,可以**通过对一个已有对象的复制获取更多对象**。Java语言提供了较为简单的原型模式解决方案,只需要创建一个原型对象,然后通过在类中定义 ...

建造者模式(Builder Pattern)

博主头像 # 建造者模式 ## 一、模式动机 建造者模式(Builder Pattern)是最复杂的创建型模式,它**用于创建一个包含多个组成部分的复杂对象**,可以返回一个完整的产品对象给用户。它通过将**客户端与包含多个组成部分的复杂对象的创建过程分离**,使得**客户端无需知道复杂对象的内部组成部分与装 ...

C#设计模式09——组合模式的写法

博主头像 1. 什么是C#组合模式? 组合模式是一种结构型设计模式,它允许将对象组合成树形结构以表示“整体/部分”层次结构。使用此模式,客户端可以按相同的方式处理单个对象和对象集合,而不必关注它们是单个对象还是组合对象。组合对象本身也可以作为容器,包含其他组合对象,形成更复杂的树形结构。 在C#中,组合模式是 ...

单例模式(Singleton Pattern)

博主头像 # 单例模式 ## 一、模式动机 单例模式(Singleton Pattern)是结构最简单的设计模式,它的**核心结构中只包含一个被称为单例类的特殊类**。通过**单例模式可以确保系统中一个类只有一个实例**,且该实例易于被外界访问,从而方便对实例个数的控制并节约系统资源。 - [ ] 如何确保一 ...

抽象工厂模式(Abstract Factory Pattern)

博主头像 # 抽象工厂模式 >回顾工厂方法设计模式的不足:具体产品增加时,系统中类的个数将成对增加,在一定程度上增加了系统的复杂度 ## 一、模式动机 - 产品等级结构:产品等级结构即产品的继承结构,即抽象产品与具体产品 - 产品族:在抽象工厂模式中,产品族是指由同一个工厂生产的,位于不同产品等级结构中的一组 ...

【访问者设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

博主头像 简介 访问者模式(Visitor Pattern)是一种行为型模式。它封装一个访问者类,把各元素类的操作集合起来,目的是将数据结构与数据操作分离。在不改变原有元素类数据结构的前提下,改变了元素类的执行算法。 当某些较为稳定的东西(数据结构或算法),不想直接被改变但又想扩展功能,这时候适合用访问者模式 ...

设计模式-工厂方法

博主头像 工厂方法模式 简单工厂的不足 上节的简单工厂,需要拓展时比如修改工厂类,违背了设计模式的开闭原则 简单工厂类直接生成各个子类产品,而工厂方法则有一个抽象工厂类,声明了创建产品的工厂方法,而各个不同的子类产品交由各个不同的具体工厂去完成创建,拓展时,只需要新建一个具体工厂即可,具有更好的灵活性和拓展性 ...

【模板方法设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

博主头像 简介 模板方法模式(Template Method Pattern)也叫模板模式,是一种行为型模式。它定义了一个抽象公开类,包含基本的算法骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变算法的结构,只是重定义该算法的某些特定步骤。不同的子类以不同的方式实现这些抽象方法,从而对剩余的逻辑有不 ...

<1···678>