设计模式学习(二)工厂模式——工厂方法模式+注册表

目录工厂方法模式的瑕疵注册表 工厂方法模式的瑕疵 在前一篇笔记中我们介绍了工厂方法模式,示例的类图如下: 考虑一种情况:现在要在程序运行时,根据外部资源,动态的实例化对象。也就是说在编译期我们无法知道要实例化的对象的类型。因此在实例化的过程中,就需要加以判断。 例如,在我的例子中,要根据连接到主机的

初步搭建一个自己的对象存储服务---Minio

MinIO 是一个高性能的对象存储解决方案,类似于 Amazon S3,但它是开源的。MinIO 可以用于存储大规模的不结构化数据,比如照片、视频、备份和日志文件等。它设计为兼容 Amazon S3 API,因此可以很容易地与现有的使用 S3 的应用程序集成。

基于神经网络的呼吸音分类算法

简介 在过去的几十年里,许多机器学习(ML)方法被引入来分析呼吸周期的声音,包括爆裂声、咳嗽声和喘息声[1-6]。然而,几乎所有传统的ML模型都完全依赖于手工制作的功能。此外,需要高度复杂的预处理步骤来利用设计的特征[4-6]。因此,仅仅基于ML的模型可能对肺部声音中的外部/内部噪声不具有鲁棒性,并

我对微服务架构的简单理解

我理解的微服务,就是把以前一个接口一个数据库里实现的逻辑,改变为通过一级或多级远程调用去不同的服务器和数据库获取数据,然后完成整个逻辑。这也算是分布式开发技术了,每次业务要保证在多级远程调用过程中,数据的一致性,在存储数据时,因为是分不同数据库,不同服务器保存数据,有可能一个请求,要保存或更新a、b...

[Unity] 实现AssetBundle资源加载管理器

实现Unity AssetBundle资源加载管理器 AssetBundle是实现资源热更新的重要功能,但Unity为其提供的API却十分基(jian)础(lou)。像是自动加载依赖包、重复加载缓存、解决同步/异步加载冲突,等基础功能都必须由使用者自行实现。 因此,本篇博客将会介绍如何实现一个Ass

Vue3:Cannot read properties of null (reading 'isCE')

Cannot read properties of null (reading 'isCE') 这个问题是在vue3中引入elementui的列表框时出现的。经过网上查询,有说是装了两个vue版本的,也有说是其他代码写错导致的,还有说是导入错误的。 但我的不是这个问题,我的是版本兼容问题。因为在网上

LOTO示波器软件PC缓存(波形录制与回放)功能

当打开PC缓存功能后, 软件将采用先进先出的原则排队对示波器采集的每一帧数据, 进行帧缓存。 当发现屏幕中有感兴趣的波形掠过时, 鼠标点击软件的(暂停)按钮, 可以选择回看某一帧的波形。一帧数据的量 是 当前用户选择时基档位缓冲区总数据大小。不同时基档位缓冲区大小不同,因此具体一帧能存储多长时间根据

咳嗽检测深度神经网络算法

具体的软硬件实现点击 http://mcu-ai.com/ MCU-AI技术网页_MCU-AI 咳嗽检测是一种很有前途的检测呼吸道疾病各种病理严重程度的技术。自动咳嗽检测系统的开发将成为早期诊断的最佳跟踪工具。长期以患者为中心的远程咳嗽严重程度监测将改变医疗基础设施的游戏规则,因为在过去几十年中,远

鼾声监测神经网络

具体的软硬件实现点击 http://mcu-ai.com/ MCU-AI技术网页_MCU-AI 打鼾是一种普遍的症状,严重影响睡眠呼吸障碍患者(单纯打鼾者)、阻塞性睡眠呼吸暂停(OSA)患者及其床伴的生活质量。研究表明,打鼾可用于OSA的筛查和诊断。因此,从夜间睡眠呼吸音频中准确检测打鼾声一直是最重

WPF使用Shape实现复杂线条动画

看到巧用 CSS/SVG 实现复杂线条光效动画的文章,便也想尝试用WPF的Shape配合动画实现同样的效果。ChokCoco大佬的文章中介绍了基于SVG的线条动画效果和通过角向渐变配合 MASK 实现渐变线条两种方式。WPF中的Shape与SVG非常相似,因此这种方式也很容易实现。但WPF中仅有的两

Advanced .Net Debugging 8:线程同步

一、介绍 这是我的《Advanced .Net Debugging》这个系列的第八篇文章。这篇文章的内容是原书的第二部分的【调试实战】的第六章【同步】。我们经常写一些多线程的应用程序,写的多了,有关多线程的问题出现的也就多了,因此,最迫切的任务就是提高解决多线程同步问题的能力。这一节我们将从本质上、

lodash已死?Radash库方法介绍及源码解析 —— 异步方法篇

写在前面 tips:点赞 + 收藏 = 学会! 我们前面已经介绍了 radash 的相关信息和所有 Array 相关方法,详情可前往主页查看。 本篇我们继续介绍radash中异步相关的方法。 所有方法分享完毕后,后续作者也会整理出 Radash 库所有方法的使用目录,包括文章说明和脑图说明。 因为方

西门子博途软件安装及使用

西门子博途软件安装及使用 一、博途软件的简介 博途软件可以对西门子300、400、1200及1500产品进行组态、编程和调试。TIA博途软件是一个系统,里面包含有多种软件,可以满足用户在不同自动化控制系统中的各种需求。因此,博途软件要求的电脑配置较高,且安装文件较大,但安装过程还算比较容易。以下为博

深度学习框架火焰图pprof和CUDA Nsys配置指南

注:如下是在做深度学习框架开发时,用到的火焰图pprof和 CUDA Nsys 配置指南,可能对大家有一些帮助,就此分享。一些是基于飞桨的Docker镜像配置的。 一、环境 & 工具配置 0. 开发机配置 # 1.构建镜像, 记得映射端口,可以多映射几个;记得挂载ssd目录,因为数据都在ssd盘上

一篇教程搞定Windows系统中的Docker应用安装

Docker是一个用于创建、管理和编排容器的应用。容器是运行在操作系统上的一个应用,具有规模小、轻量化的特性。相对于虚拟机技术,容器可以为我们节省大量的系统资源,也正因此,容器可以轻松地在裸机系统以及多种云服务环境中移动。由于Docker是依赖Linux内核的应用,在Linux系统和MacOS系统中...

一个用Python将视频变为表情包的工具

这是一个将视频转变为表情包的工具,现实生活中当我们看到一段搞笑的视频,我们可以将这段视频喂给这段程序,生成gif表情包,这样就可以用来舍友斗图了 1、一些限制 1、这个程序不能转化超过15秒以上的视频,因为占用的内存较高,会被终端杀死(除非你的计算机性能很好,也许1分钟的短视频都可以),为了整个程序

毕业四年,随笔

我刚毕业的时候还喜欢总结下刚实习的时候做了什么,毕业一年又学到了什么。从毕业两年后,好像就没有好好写过近况了,今天来随笔记录下。 以前大学还没毕业时,一直好奇有几年工作经验的人是不是会特别强,因为他们说三、四年工作经验的人是最吃香的。那时在技术论坛里,能认识的好像大多数也是工作三、四年的,那时感觉这

lodash已死?radash最全使用介绍(附源码说明)—— Array方法篇(4)

写在前面 tips:点赞 + 收藏 = 学会! 我们已经介绍了radash的相关信息和部分Array相关方法,详情可前往主页查看。 本篇我们继续介绍radash中Array的相关方法的剩余方法。 本期文章发布后,作者也会同步整理出Array方法的使用目录,包括文章说明和脑图说明。 因为方法较多,后续

使用VPN【wireguard】搭建安全,方便的跳板机【0到1架构系列】

什么是跳板机? 部署一台具有公网通讯能力的服务器,开发或运维通过这台服务器的远程登陆功能,远程登陆该服务器然后与处于内网的服务器进行通讯或作业,那么这台服务器一般称为"跳板机"。 跳板机的安全 一般来说不建议在搭建公网服务的服务器上面暴露远程登陆端口,因为公网IP己经暴露,部署专门用于登陆的跳板机可

Go运算操作符全解与实战:编写更高效的代码!

本文全面探讨了Go语言中的各类运算操作符,从基础的数学和位运算到逻辑和特殊运算符。文章旨在深入解析每一种运算操作符的工作原理、应用场景和注意事项,以帮助开发者编写更高效、健壮和可读的Go代码。 简介 Go语言,作为一种现代的编程语言,不仅因为其简单易读的语法而受到欢迎,还因为它的性能和高度并发能力在