模式

前端设计模式——模板方法模式

模板方法模式(Template Method Pattern):定义一个行为的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个行为的结构即可重定义该行为的某些特定步骤。 这些步骤被称为“具体操作”(Concrete Operations),而整个行为的结构和顺序则被称为“模板方法”(T ......
模式 设计模式 前端 模板 方法

前端设计模式——桥接模式

桥接模式(Bridge Pattern)是一种结构型设计模式,用于将一个大类或一系列紧密相关的类拆分为抽象和实现两个独立的层次结构,从而能够更好地组合和扩展这些类。 在前端开发中,桥接模式通常用于处理 UI 组件的复杂性,将组件的抽象与实现分离,使得它们能够独立地变化。通过桥接模式,我们可以让组件的 ......
模式 设计模式 前端

前端设计模式——过滤器模式

前端设计模式中的过滤器模式(Filter Pattern)是一种结构型设计模式,它允许我们使用不同的条件来过滤一组对象,并返回符合条件的对象列表。 在过滤器模式中,我们有一个包含多个对象的列表,需要根据一些条件来筛选出符合条件的对象。通常情况下,可以使用多个过滤器来实现这个功能。每个过滤器都是一个独 ......
模式 设计模式 前端 过滤器

责任链模式

begin 2021年12月11日20:47:41 责任链模式 定义 Avoid coupling the sender of a request to its receiver by giving more than one object a chance to handle the reques ......
模式 责任

简单明了的体会构建者模式

我们由一个小小的Demo来引出主题,尽管这个Demo有点长~~,我相信还是值得你一看的! 木兰诗中有:“雄兔脚扑朔,雌兔眼迷离;双兔傍地走,安能辨我是雌雄?” 对象之间的比较想必大家都很熟悉。只须用 util 包中的Objects.equals()方法即可。如果我想找出对象之间不相同的属性呢? 那肯 ......
明了 模式

aspnetcore微服务中使用发件箱模式实例

aspnetcore微服务种服务之间的通信一般都有用到消息中间件,如何确保该服务的持久层保存创建的数据同时又把消息成功投递到了关联服务,关联服务做对应的处理。 下面就以一个简单的例子来演示实现方式之一,即发件箱模式。 下面解决方案有两个服务,做演示用的比较简单,一个是订单服务,一个是账单服务。完成订 ......
aspnetcore 实例 模式

结构型-装饰器模式

定义 如果希望动态给某个类添加一些属性或者方法,但是你又不希望这个类派生的对象受到影响,那么装饰器模式就可以给你带来这样的体验。 它的定义就是在不改变原对象的基础上,通过对其进行包装拓展,使得原有对象可以动态具有更多功能,从而满足用户的更复杂需求。 举个例子,一部手机,你可以买各种花里胡哨的手机壳等 ......
结构型 结构 模式

fpm模式下读取到is_cli为何为true

php-fpm下读取到is_cli为true,不知道你们是否遇到过,我是遇到了。。。。 有人会说,即使为true又怎么了,你是没遇到有些根据is_cli来走不同逻辑判断的,如果读取的是错的就会引起很大的问题。。。。 ......
模式 is_cli true fpm cli

深度解析单例模式

饥汉模式 package com.cz.single; /** * @author 卓亦苇 * @version 1.0 * 2023/3/11 21:31 */ public class Hungry { private byte[] data1 = new byte[1024]; private ......
深度 模式

Flink模式

Per-job Cluster 该模式下,一个作业一个集群,作业之间相互隔离。 在Per-Job模式下,集群管理器框架用于为每个提交的Job启动一个 Flink 集群。Job完成后,集群将关闭,所有残留的资源也将被清除。 此模式可以更好地隔离资源,因为行为异常的Job不会影响任何其他Job。另外,由 ......
模式 Flink

设计模式(十五)----结构型模式之外观模式

1 概述 有些人可能炒过股票,但其实大部分人都不太懂,这种没有足够了解证券知识的情况下做股票是很容易亏钱的,刚开始炒股肯定都会想,如果有个懂行的帮帮手就好,其实基金就是个好帮手,支付宝里就有许多的基金,它将投资者分散的资金集中起来,交由专业的经理人进行管理,投资于股票、债券、外汇等领域,而基金投资的 ......
模式 结构型 设计模式 外观 结构

设计模式(十四)----结构型模式之组合模式

1 概述 对于这个图片肯定会非常熟悉,上图我们可以看做是一个文件系统,对于这样的结构我们称之为树形结构。在树形结构中可以通过调用某个方法来遍历整个树,当我们找到某个叶子节点后,就可以对叶子节点进行相关的操作。可以将这颗树理解成一个大的容器,容器里面包含很多的成员对象,这些成员对象即可是容器对象也可以 ......
模式 结构型 设计模式 结构

设计模式(十六)----结构型模式之代理享元模式

1 概述 定义: 运用共享技术来有效地支持大量细粒度对象的复用。它通过共享已经存在的对象来大幅度减少需要创建的对象数量、避免大量相似对象的开销,从而提高系统资源的利用率。 2 结构 享元(Flyweight )模式中存在以下两种状态: 内部状态,即不会随着环境的改变而改变的可共享部分。 外部状态,指 ......
模式 结构型 设计模式 结构

不会用“函数选项模式”的朋友看过来,这么写很优雅

由浅入深的讲解了下实例对象初始化一般写法和高阶写法。用好这个高阶写法(函数选项模式),让代码更优雅。还不会使用的Gopher,赶紧学起来,用起来。 ......
函数 模式 朋友

创建型-原型模式

定义 使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式 百科。 通俗的说就是原型模式是一种创建型设计模式,指定某个对象(通过某种方式)得到一个新的对象,在内存中拥有新的地址,得到的对象与原对象是是相互独立的,即得到跟原对象一样的对象 当我们需要两个一模一 ......
原型 模式

创建型:工厂模式-工厂方法、抽象工厂

简单工厂问题 简单工厂中我们通过参数来返回不同的产品对象,如果管理的对象过多,这个工厂函数会比较庞大,且当我们需要增加一个新的产品时,需要修改这个工厂方法,违反开闭原则(对拓展开放,对修改关闭)。 为了解决简单工厂模式的问题,出现了工厂方法模式。 解决简单工厂思路 简单工厂类图关系类似如下: 如上图 ......
工厂 模式 方法

创建型:工厂模式-简单工厂

定义 之所以叫简单工厂是因为真的非常简单,只要一个工厂(函数)就可以了,如果把被创建的对象称为产品,把创建产品的对象或者方法称为工厂,那么只需要传入不同的参数,就可以返回不同的产品(实例),这种模式就叫简单工厂模式。 简单工厂-餐馆点菜 工厂模式其实就是将创建对象的过程单独封装在一个工厂中。 它很像 ......
工厂 模式

设计模式与前端工程师

前端要不要学习设计模式 始终认为每个行业都有自己的特点,各自的专业性。一个开发工程师如果不知道电脑是哪些基本硬件组成,那么我们大概率都会认为这个人非常不专业。那么前端要不要学设计模式呢?设计模式跟前端有多大关系呢? 前端工程师首先是一个工程师,既然是一个软件工程师,那么类似设计模式、数据结构、网络相 ......
设计模式 前端 工程师 模式 工程

zabbix被动模式和主动模式的区别

主动模式、被动模式都是以zabbix agent的角度来说的。以下从几个方面来深入解释2个模式的区别。 主动模式active: 主动模式下,zabbix agnet定时向zabbix server发送自身监控数据 端口:zabbix agent主动发起进程,访问zabbix server 的1005 ......
模式 zabbix

【桥接设计模式详解】Java/JS/Go/Python/TS不同语言实现

【桥接设计模式详解】Java/JS/Go/Python/TS不同语言实现 简介 桥接模式(Bridge Pattern)是一种结构型设计模式,它将一个大类或一系列紧密相关的类拆分为抽象和实现两个独立的层次结构,来实现二者的解耦。参与桥接的接口是稳定的,用户可以扩展和修改桥接中的类,但是不能改变接口。 ......
设计模式 语言 模式 Python Java

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

简介 建造者模式(Builder Pattern),也叫生成器模式,属于创建型模式。它使用多个简单的对象一步一步构建成一个复杂的对象。它允许你使用相同的创建代码生成不同类型和形式的对象。 当你希望使用代码创建不同形式的产品 (例如各种商品和订单) 时, 一些基本部件不会变,而其组合经常变化的时候,就 ......
设计模式 语言 模式 Python Java

【RSocket】使用 RSocket(二)——四种通信模式实践

Source Code: https://github.com/joexu01/rsocket-demo 0. 四种通信模式 让我们来简单复习一下 RSocket 的四种通信模式: 即发即忘 - FireAndForget:立即发送一个请求,无需为这个请求发送响应报文。适用于监控埋点,日志上报等,这 ......
RSocket 模式

简易的工厂设计模式

工厂设计模式是一种创建型设计模式,它提供了一种创建对象的最佳方式,而无需暴露对象的创建逻辑。在工厂模式中,我们定义一个接口或抽象类,该接口或抽象类用于创建对象,但让子类决定要实例化的类。工厂方法模式使类的实例化延迟到其子类。 下面是一个完整的C#实现案例: 首先,我们定义一个接口,用于创建对象: p ......
设计模式 简易 工厂 模式

详细讲解23种设计模式

工厂方法模式(Factory Method Pattern) 工厂方法模式是一种创建型设计模式,它定义了一个用于创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法把对象的实例化推迟到子类。 代码示例: csharpCopy codepublic interface IProduct { vo ......
设计模式 模式

“无所不能的中介”——代理模式

1.简介 定义:将某个对象中围绕某个主题的一些列行为委托给一个代理对象去执行,代理对象将控制和管理对原有对象的访问,调用者想要访问目标对象,必须通过代理对象去间接访问,代理对象在调用方和目标对象之间可以起到”中介“的作用。代理一词本身,其实就可以很好发现的关键点,如果暂时无法理解晦涩的概念,那么在阅 ......
无所不能 中介 模式

自己动手从零写桌面操作系统GrapeOS系列教程——9.实模式介绍

学习操作系统原理最好的方法是自己写一个简单的操作系统。 在GrapeOS中会用到2种CPU模式,一种是实模式(real mode),另一种是保护模式(protected mode)。在本教程中,保护模式特指32位保护模式。这两种模式最主要的不同点是对内存地址的访问方式不同,此外还有其它的不同点。这两 ......
桌面 GrapeOS 模式 教程 系统

自己动手从零写桌面操作系统GrapeOS系列教程——14.屏幕显示原理与文本模式

学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、屏幕显示原理 电脑显示器屏幕是由很多很小的像素组成的。每个像素就像是一个小灯泡,在屏幕上一排一排的整齐排列着。只要能控制每个像素的颜色就能显示出各种各样的图形。如果近距离观察过会场或室外的大屏幕会有更直观的感受,这种大屏幕上每个像素就是一个 ......
文本 屏幕 原理 桌面 GrapeOS

工厂模式进阶用法,如何动态选择对象?

前言 工厂设计模式可能是最常用的设计模式之一,我想大家在自己的项目中都用到过。可能你会不屑一顾,但这篇文章不仅仅是关于工厂模式的基本知识,更是讨论如何在运行时动态选择不同的方法进行执行,你们可以看看是不是和你们项目中用的一样? 欢迎关注个人公众号【JAVA旭阳】交流沟通 小菜鸟的问题 直接上例子说明 ......
对象 工厂 模式 动态

明解STM32—GPIO理论基础知识篇之八种工作模式

一、引言 在之前围绕STM32的GPIO的基本结构进行了介绍,图1为STM32的5V容忍的GPIO口内部基本结构图,图2为GPIO的基本结构中各个模块部分的概述。 阅读GPIO基本结构的内容能够对GPIO的工作模式有更深的了解。正是由于GPIO的结构中包含了多样性的电路和模块,因此进行合理的配置组合 ......
基础知识 理论 模式 基础 知识

Sidecar-详解 JuiceFS CSI Driver 新模式

近期发布的 JuiceFS CSI Driver v0.18 版本中,我们提供了一种全新的方式访问文件系统,即 JuiceFS 客户端以 Sidecar 方式运行于应用 Pod 中,且客户端与应用同生命周期。 这个全新的功能将帮助用户在 Serverless Kubernetes 环境中使用 Jui ......
Sidecar JuiceFS 模式 Driver CSI