内核 模式

行为型模式-命令模式

1 什么是命令模式 命令模式(Command Pattern)是一种行为型设计模式,它将请求封装成一个对象,从而可以使用不同的请求参数、对请求排队或记录请求日志,以及支持可撤销的操作。 命令模式通常包含以下几个角色: 命令(Command):声明执行操作的接口,通常包含一个执行方法(execute) ......
模式 命令 行为

设计模式 - Immutable 模式(Java不变集合类 vs Google Guava不变集合类)

总结 JDK中的unmodifiableList的构造函数是对原始集合的浅拷贝, 而Guava.ImmutableList.copyOf是对原始集合的深拷贝 public class ImmutableDemo { public static void main(String[] args) { L ......
模式 设计模式 Immutable Google Guava

行为型模式-观察者模式

1 什么是观察者模式 观察者模式(Observer Pattern)是一种行为型设计模式,用于定义对象之间的一对多依赖关系,当一个对象的状态发生变化时,所有依赖它的对象都会得到通知并自动更新。 观察者模式包括两种类型的对象:主题(Subject)和观察者(Observer)。主题是被观察的对象,它维 ......
模式 观察者 行为

每日随笔——建造者模式

[实验任务一]:计算机组装 使用建造者模式,完成下述任务:计算机组装工厂可以将CPU、内存、硬盘、主机等硬件设备组装在一起构成计算机,计算机的类型可以是笔记本,也可以是台式机。 实验要求: 1.画出对应的类图; 2.提交源代码; 3.注意编程规范。 1、类图 2、源码 Builder package ......
随笔 模式

行为型模式-策略模式

1 什么是策略模式 策略模式(Strategy Pattern)是一种行为型设计模式,它允许在运行时选择算法的行为,将算法的定义和使用代码分离开来。 策略模式通过定义一组算法类,并将它们封装在可互换的策略对象中,使得在调用代码中可以动态选择具体的算法实现。这样,客户端代码与具体算法的实现细节解耦,客 ......
模式 策略 行为

结构型模式-代理模式

1 什么是代理模式 代理模式(Proxy Pattern)是一种结构型设计模式,它允许通过代理对象控制对原始对象的访问。代理模式在不改变原始对象的情况下,为其提供了一个替代品或占位符,从而可以在访问链上添加额外的逻辑功能。 2 举个例子 下面以一个简单的图片加载器为例来说明代理模式的应用。假设我们有 ......
结构型 模式 结构

创建型模式-单例模式

1 什么是单例模式 单例模式是一种创建型设计模式,它确保一个类仅有一个实例,并提供一个全局访问点来访问该实例。单例模式常用于需要唯一实例来协调任务的场景,比如线程池、日志记录器、缓存等。 2 举个例子 下面以一个简单的日志记录器为例来说明单例模式的应用。首先,我们定义一个日志记录器类 Logger, ......
模式

C#设计模式 ---- 总结汇总(转载)

转载地址:https://www.cnblogs.com/PatrickLiu/p/8287784.html 一、引言 C#版本的23种设计模式已经写完了,现在也到了一个该总结的时候了。说起设计模式,我的话就比较多了。刚开始写代码的时候,有需求就写代码来解决需求,如果有新的需求,或者需求变了,我就想 ......
设计模式 模式

创建型模式-抽象工厂模式

1 什么是抽象工厂模式 抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一种方式来创建一系列相关或相互依赖的对象,而无需指定具体的类。抽象工厂模式通过定义一个抽象工厂接口,该接口声明了一组用于创建不同类型对象的工厂方法。每个工厂方法负责创建一种类型的对象 ......
模式 工厂

创建型模式-工厂方法模式

1 什么是工厂方法模式 工厂方法模式(Factory Method Pattern)是一种创建型设计模式,它定义了一个用于创建对象的接口,但将对象的实际创建延迟到子类中。这样,客户端代码使用工厂方法来创建对象,而不需要了解具体对象的创建细节,从而实现了对象的解耦和灵活性。 工厂方法模式的核心思想是将 ......
模式 工厂 方法

创建型模式-原型模式

1 什么是原型模式 原型模式(Prototype Pattern)是一种创建型设计模式,它允许通过克隆现有对象来创建新对象,而无需通过标准的构造函数来创建。原型模式适用于需要创建复杂对象的场景,同时又希望避免构造函数的开销。 2 举个例子 举一个简单的例子来说明原型模式,假设我们有一个图形绘制程序, ......
模式 原型

结构型模式-适配器模式

1 什么是适配器模式 适配器模式(Adapter Pattern)是一种结构型设计模式,它允许将一个类的接口转换成客户端所期望的另一个接口。适配器模式可以解决接口不兼容的问题,使得原本由于接口不匹配而无法协同工作的类可以一起工作。 适配器模式涉及三个主要角色:目标接口(Target Interfac ......
结构型 模式 适配器 结构

结构型模式-装饰模式

1 什么是装饰模式 装饰模式(Decorator Pattern)是一种结构型设计模式,它允许将新功能动态地添加到对象中,通过将对象放入特殊的包装对象中,这样可以在不改变其接口的情况下,对对象的功能进行逐步扩展。 在装饰模式中,通常包括以下几个角色:抽象构件(Component)、具体构件(Conc ......
结构型 模式 结构

结构型模式-桥接模式

1 什么是桥接模式 桥接模式(Bridge Pattern)是一种用于将抽象部分与它的实现部分分离的设计模式,使它们可以独立地变化。桥接模式通过组合而不是继承的方式来实现两个或多个独立变化的维度,从而减少类之间的耦合性。 在桥接模式中,存在两种角色:抽象部分(Abstraction)和实现部分(Im ......
结构型 模式 结构

linux内核 快速分片,技术|Linux slabtop命令——显示内核片缓存信息

Linux内核需要为临时对象如任务或者设备结构和节点分配内存,缓存分配器管理着这些类型对象的缓存。现代Linux内核部署了该缓存分配器以持有缓存,称之为片。不同类型的片缓存由片分配器维护。本文集中讨论slabtop命令,该命令显示了实时内核片缓存信息。 1.命令用法: 该命令用起来很简单,默认执行时 ......
内核 缓存 命令 slabtop linux

行为模式-责任链模式

1 什么是责任链模式 责任链模式(Chain of Responsibility Pattern)是一种行为设计模式,用于建立一个对象链,每个对象都有机会处理请求。请求沿着对象链传递,直到有一个对象能够处理它为止。这样,责任链模式将请求的发送者和接收者解耦,动态确定处理请求的对象。 在责任链模式中, ......
模式 行为 责任

结构型模式-享元模式

1 什么是享元模式 享元模式(Flyweight Pattern)是一种以共享对象来减少内存使用和提高性能的设计模式。在享元模式中,通过共享尽可能多的相似对象来减少系统中对象的数量。这样可以节省内存和减少对象的创建和销毁所带来的开销。 享元模式的核心思想是将对象分为两个部分:内部状态(Intrins ......
结构型 模式 结构

工厂方法模式

[实验任务]:加密算法 目前常用的加密算法有DES(Data Encryption Standard)和IDEA(International Data Encryption Algorithm)国际数据加密算法等,请用工厂方法实现加密算法系统。 public interface Encryption ......
工厂 模式 方法

python升级到3.12版本, 开发模式安装包, 在vscode下Pylance无法解析的问题处理

问题描述 在python3.11版本下开发python库, 为方便调测, 使用开发模式安装包. 使用如下命令: pip install -e . 其中-e参数表示开发模式下安装python包, 它并没有把包相关文件拷贝到site-packages目录, 而是创建一个链接指向当前的开发库. 这样, 当 ......
Pylance 版本 模式 python vscode

Go 接口:Go中最强大的魔法,接口应用模式或惯例介绍

Go 接口:Go中最强大的魔法,接口应用模式或惯例介绍 目录Go 接口:Go中最强大的魔法,接口应用模式或惯例介绍一、前置原则二、一切皆组合2.1 一切皆组合2.2 垂直组合2.2.1 第一种:通过嵌入接口构建接口2.2.2 第二种:通过嵌入接口构建结构体类型2.2.3 第三种:通过嵌入结构体类型构 ......
接口 惯例 模式 魔法 Go

Kubernetes日志采集Sidecar模式介绍

Kubernetes(K8S)作为CNCF(cloud native computing foundation)的一个核心项目,背靠Google和Redhat的强大社区,近两年发展十分迅速,在成为容器编排领域中领导者的同时,也正在朝着PAAS底座标配的方向发展。 日志采集方式 日志作为任一系统不可或 ......
Kubernetes Sidecar 模式 日志

flutter 运行的四种模式

Debug(调试)模式 1、 这是开发Flutter应用程序时最常用的模式。可以在真机和模拟器上同时运行。重要用于开发和调试阶段。 2、可以进行热重载,即在不重新启动应用程序的情况下实时更新代码。 3、应用程序会包含用于调试和开发的额外信息和工具(debugging信息、debugger aids( ......
flutter 模式

设计模式-适配器模式

参考:https://blog.csdn.net/yourgod007/article/details/131217788 概述 适配器模式是一种结构型设计模式,它允许将一个类的接口转换成客户端所期望的另一个接口。适配器模式的主要目的是解决两个不兼容接口之间的接口转换问题,使得原本由于接口不匹配而无 ......
模式 设计模式 适配器

Xcode自动管理签名模式下更新PP文件

1、Xcode 切换到相应的 Target,选择到 Signing & Capabilities,找到 Provisioning Profile Managed Profile,旁边有一个 Info符号,点击,展示PP文件详情,然后拖动左上角的PP文件图标到桌面,主要是为了获取该 PP文件的名字。( ......
模式 文件 Xcode

JUC并发编程学习笔记(十七)彻底玩转单例模式

彻底玩转单例模式 单例中最重要的思想 >构造器私有! 恶汉式、懒汉式(DCL懒汉式!) 恶汉式 package single; //饿汉式单例(问题:因为一上来就把对象加载了,所以可能会导致浪费内存) public class Hungry { /* * 如果其中有大量的需要开辟的空间,如new b ......
模式 笔记 JUC

k8s通过sidecar模式收集pod的容器日志至ELK

架构: 已完成的部署1、ES集群及kibana部署 https://blog.51cto.com/yht1990/6080981 2、kafaka+zookeeper集群 https://blog.51cto.com/yht1990/6081518 准备sidecar镜像(filebeat)找一台服 ......
容器 sidecar 模式 日志 k8s

Dalvik虚拟机是在Linux内核上面运行的吗?为什么能执行安卓APK程序?

Dalvik虚拟机确实是在Linux内核之上运行的。它是安卓系统的关键组件,专门设计来执行APK文件中的代码。这里是它的工作原理和一个生活中的例子: 工作原理: 基于Linux内核: 安卓系统基于Linux内核,这为安卓设备提供了底层功能,如硬件抽象、网络通信、安全机制等。 Dalvik虚拟机: 在 ......
内核 程序 Dalvik Linux 是在

安卓系统的内核是Linux,但是它为什么能运行APK程序

安卓系统虽然基于Linux内核,但是它并不直接运行Linux的二进制程序。安卓为其设备提供了一个特殊的运行环境,这个环境包括了一个叫做Dalvik虚拟机(在Android 4.4及以后版本中被ART替代)的组件,它能够运行专门为安卓设计的APK文件中的程序。 这里有一个生活中的比喻: 想象Linux ......
内核 程序 系统 Linux APK

桥接模式

[实验任务一]:两个维度的桥接模式 用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。 #include <iostream> using namespace std; class Transportation { public: virtual void dr ......
模式

CH32FV32系列进入STOP及STANBY模式电流大的问题

关于CH32FV32低功耗模式(STOP及STANDBY)。 我们EVT例程中将所有IO均配置成下拉输出而防止外部器件漏电流引起功耗增大。但是有的客户进入低功耗后需要IO电平保持从而出现了进入STOP/STANBY模式后电流还是很大(STOP几百个uA STANDBY一百多uA)。手册中低功耗电流如 ......
电流 模式 STANBY 问题 32