自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(133)
  • 资源 (2)
  • 收藏
  • 关注

原创 NestJS 编写 SSE 接口推送数据

Server-Sent Events(SSE)技术,它是一种用于实现服务器向客户端实时推送数据的Web技术。SSE基于HTTP协议,允许服务器将数据以事件流(Event Stream)的形式发送给客户端。客户端通过建立持久的HTTP连接,并监听事件流,可以实时接收服务器推送的数据。

2023-07-13 16:50:24 2189 1

原创 [失业前端恶补算法]JavaScript leetcode刷题top100(六):字母异位词分组、最长连续序列、找到字符串中所有字母异位词、最大子数组和、除自身以外数组的乘积

专栏声明:只求用最简单的,容易理解的方法通过,不求优化,不喜勿喷。JavaScript 攻克 leetcode top100 第六篇:字母异位词分组、最长连续序列、找到字符串中所有字母异位词、最大子数组和、除自身以外数组的乘积

2023-06-29 22:11:13 1120

原创 C# WinForm 选择打开文件和保存文件

属性我们可以文件的设置默认的保存名称,这里我们只需要填写名称即可,不需要文件的保存路径,还有一些其他配置写在代码注释中了。属性获取文件保存位置的完整路径,之后通过 IO 将数据写入即可。如果你想在用户在选择框取消选择时做一些事情,你可以通过。如果用户想要打开一个保存文件的窗口,就需要选用。如果用户需要选择多个文件,可以通过设置。当用户选择完毕文件后,我们可以通过。属性拿到的是第一个文件的路径,而。可以设置可以保存的格式,通过。和打开文件时一样,我们可以通过。属性可以获取到选择的文件。属性来开启多选,此时。

2023-06-29 16:40:54 4410

原创 (万字长文)React 18 源码与原理解读 —— 看这一篇就够了

本节是整个React 的源码与原理解读解读教程的最后一章,作者会用自己的理解带着大家梳理一下整个 React 的运行过程,因为篇幅的问题,作者会主要讲述一下一下重点的内容和要点的信息,侧重给读者一个完整的运行逻辑,对于讲解不到位的部分可以阅读之前的详细教程,教程肯定还是会有疏漏的部分请大家海涵

2023-06-23 17:09:29 5084

原创 React 的源码与原理解读(十六):Context 与 useContext

这个章节是 React 源码系列的最后一个章节了,主要来讲我们用于跨多层级通信的常用 hooks —— useContext,我们会从 context 的创建和消费讲起,再讲到怎么样使用 useContext 这个钩子来简化操作,最后分析 context 的运行原理和挂载过程。

2023-06-17 15:20:50 2841

原创 leetcode — JavaScript专题(八):间隔取消、使用方法链的计算器、判断对象是否为空、记忆函数 II、设计可取消函数

leetcode — JavaScript专题(八):间隔取消、使用方法链的计算器、判断对象是否为空、记忆函数 II、设计可取消函数

2023-06-10 18:59:10 1632 1

原创 leetcode — JavaScript专题(七):精简对象、执行可取消的延迟函数、并行执行异步函数、根据 ID 合并两个数组、添加两个 Promise 对象、排序方式

leetcode — JavaScript专题(七):精简对象、执行可取消的延迟函数、并行执行异步函数、根据 ID 合并两个数组、添加两个 Promise 对象、排序方式

2023-06-10 14:29:42 1020

原创 leetcode — JavaScript专题(六):使用自定义上下文调用函数、事件发射器、包装数组、两个对象之间的差异、返回传递的参数的长度、相等还是不相等

leetcode — JavaScript专题(六):使用自定义上下文调用函数、事件发射器、包装数组、两个对象之间的差异、返回传递的参数的长度、相等还是不相等

2023-06-03 22:17:08 1427 1

原创 React 的源码与原理解读(十五):Hooks解读之四 useLayoutEffect&useEffect

这个章节主要讲解React 的 useLayoutEffect 和 useEffect 这两个 api,它们也是我们常用的 hooks,这两个 api 常被我们用来作为函数组件的生命周期来使用,用于处理我们副作用相关的内容,这篇我们就来看看他们的原理,以及在源码中运行作用的方式

2023-05-24 16:15:16 2222

原创 React 的源码与原理解读(十四):Hooks解读之三 useState&useReducer

这个章节主要讲解React 的 useState 和 useReducer 这两个 api,这是我们使用最多的 hook 了,他们允许我们在函数组件中也持有状态 state,然后对这个状态进行操作,这一章我们会从使用和源码两个角度深入讲解这两个 hooks

2023-05-21 21:42:05 1515

原创 leetcode — JavaScript专题(五):计数器 II、只允许一次函数调用、 创建 Hello World 函数、将对象数组转换为矩阵、节流、分块数组

leetcode — JavaScript专题(五):计数器 II、只允许一次函数调用、 创建 Hello World 函数、将对象数组转换为矩阵、节流、分块数组

2023-05-19 14:29:01 1376

原创 React 的源码与原理解读(十三):Hooks解读之二 useRef

这个章节主要讲解React 的 useRef 这个 api,我们将从使用和源码两个角度来讲它,介绍它作为组件的全局变量和 DOM 引用两个场景下的使用和源码挂载,以及 React 一个和引用相关的 api —— forwardRef

2023-05-12 19:01:25 2095

原创 React 的源码与原理解读(十二):Hooks解读之一 useCallback&useMemo

从这个章节开始,我们将逐步讲解部分常用的 hooks,我会按照我们理解这些 hooks 的难度来讲解,本节主要讲解我们用于优化的useCallback 和 useMemo 两个 api,我们将从使用和源码两个角度来讲它:

2023-05-10 16:49:46 1655

原创 React 的源码与原理解读(十一):hooks 的原理

这个章节和前面的部分相对独立,我们将来讲一下我们在 React 16.8 更新的新特性 **Hooks**,我们都知道 Hooks 的提出主要就是为了解决函数组件的状态问题而存在的,之前我们的 class 组件有状态,但是 function 组件没有,所以为了解决这个问题,hooks 诞生了。那么为了让我们的 hooks 挂在在整个 React 的生命周期中, React 是怎么样处理他们的呢,我们来看看这部分的内容:

2023-05-08 20:10:13 2404

原创 leetcode — JavaScript专题(四):过滤数组中的元素、转换数组中的每个元素、Promise 对象池、有时间限制的 Promise 对象、生成斐波那契数列、嵌套数组生成器

leetcode — JavaScript专题(四):过滤数组中的元素、转换数组中的每个元素、Promise 对象池、有时间限制的 Promise 对象、生成斐波那契数列、嵌套数组生成器

2023-05-01 16:15:49 1141

原创 React 的源码与原理解读(十):updateQueue 与 processUpdateQueue

这个章节是补充的章节,因为我突然发现将了 lanes 的时候提到了我们的 updateQueue ,我以前之前讲过了,结果发现之前因为涉及了大量 lanes 的内容所以没讲,那么在将 hooks 之前,我们补充一篇 updateQueue 以及相关操作的讲解,这篇会让你在我学习**lanes ** 系统之后,对于我们怎么样依赖 lanes 系统进行我们的更新有更深刻的了解

2023-04-30 21:06:41 1606 1

原创 leetcode — JavaScript专题(三):完全相等的 JSON 字符串、复合函数、 分组、柯里化、将对象转换为 JSON 字符串

leetcode — JavaScript专题(三):完全相等的 JSON 字符串、复合函数、 分组、柯里化、将对象转换为 JSON 字符串

2023-04-29 11:52:37 1840

原创 React 的源码与原理解读(九):Lanes

在之前的章节中,我们主要分析了 **Scheduler ** 系统是怎么样调度我们的渲染任务的,他主要用于判断在一批任务的执行过程中,我们什么时候要把进程还给我们的浏览器;而这一篇我们要谈到我们 React 中的了一个套优先级系统 —— lanes,这套系统主要用于我们讨论优先级低的任务执行过程中是不是一个被打断,转而执行优先级更高的任务。

2023-04-27 11:24:27 2504

原创 leetcode — JavaScript专题(二):记忆函数、蜗牛排序、扁平化嵌套数组、数组归约运算、函数防抖

leetcode javascript专题(二):记忆函数、蜗牛排序、扁平化嵌套数组、数组归约运算、函数防抖

2023-04-24 15:33:13 1401

原创 leetcode — JavaScript专题(一):检查是否是类的对象实例、数组原型对象的最后一个元素、计数器、睡眠函数、有时间限制的缓存

leetcode 的 js 专题(一):检查是否是类的对象实例、数组原型对象的最后一个元素、计数器、睡眠函数、有时间限制的缓存

2023-04-24 13:49:18 1500

原创 React 的源码与原理解读(八):Scheduler

在之前的章节中,我们主要分析了 React 怎么样从我们编写的 jsx 代码变成我们看得到的 DOM 元素,我们在讲解过程中为了能连贯的讲解,留下了很多的坑没填,一部分就是关于进程调度的,这一节我们就要填上这些坑。这节我们先讲React 中的 **Scheduler ** 系统是怎么样调度我们的渲染任务的,它怎么样计算任务的运行时间、调度任务的运行顺序以及怎么样恢复被中断的任务

2023-04-18 18:25:29 722

原创 React 的源码与原理解读(七):commit 阶段

本节的我们将谈谈 **commit** 中 React 的操作,因为在之前的教程中,我们已经讲到了 React 怎么样把 element 节点变成 Fiber 树,怎么样通过 DIFF 算法更新我们的 Fiber 树,那么现在我们需要将我们的 Fiber 树的更新同步到我们的真实 DOM 上展示给用户,这个阶段就是 Commit 阶段

2023-04-14 13:25:05 747

原创 React 的源码与原理解读(六):reconcileChildren 与 DIFF 算法

本节的我们将从 上一节留下的问题出发,谈谈 **reconcileChildren()** 中怎么样最终生成 fiber 结点,其中我们会谈到 React 核心的 **DIFF 算法**,他的核心 —— 复用怎么实现,同时他是怎么样把比较的时间复杂度进行了优化

2023-04-11 16:02:17 776

原创 [失业前端恶补算法]JavaScript leetcode刷题top100(五):两数相加、无重复字符的最长子串、最长回文子串、盛最多水的容器、三数之和

js 攻克leetcode top100 :两数相加、无重复字符的最长子串、最长回文子串、盛最多水的容器、三数之和

2023-04-02 10:31:38 353

原创 React 的源码与原理解读(五):beginWork 分类处理逻辑

本节的我们将从 上一节留下的问题出发,谈谈 **beginWork ()** 中怎么样把一个 element 节点变成一个 fiber 结点,其中我们会提到我们的 **beginwork 怎么样处理更新和首次渲染**,通过什么样的方式来加速渲染,以及**对于不同类型的节点使用怎么样不同的逻辑**

2023-03-28 17:35:48 700

原创 React 的源码与原理解读(四):updateContainer 内如何通过深度优先搜索构造 Fiber 树

本节的我们将从 上一节留下的问题出发,谈谈 **render()** 中的 **updateContainer** 做了什么工作,他怎么样把 **传入进去的 DOM 元素变成我们的 Fiber 元素**。因为这部分涉及到大量进程调度的问题,我们暂时不谈论这些问题,只是简单谈谈从 **updateContainer** 开始到最后变成 Fiber 经历的一系列的函数链,以及他们分别做了什么工作,进程调度的全部内容我们会在之后详细谈谈

2023-03-23 21:59:20 669

原创 React 的源码与原理解读(三):从 Render 开始,理解元素的挂载和解析

本节的我们将从 React 的入口函数出发,谈谈在 **render()** 之后,React 做了什么事情,这部分会涉及到我们怎么样**生成一个 Fiber 根节点以及一棵 Fiber 树**,然后将它 **挂载到真实 DOM 上** 的问题,所以需要您先阅读前两章的内容来了解什么是 Fiber

2023-03-21 16:34:17 961

原创 React 的源码与原理解读(二):Fiber 与 Fiber 链表树

本节的内容我们将讲述React中的一个很重要的数据结构——**Fiber** ,本节先着重说明**什么是 Fiber 结构,它的数据结构是什么,以及 React 为什么要在 16.X 版本后引入 Fiber 结构**,之后的章节会讲述从 React Element 到 Fiber 树的过程以及 Fiber 树的生成和更新

2023-03-20 21:09:44 1551

原创 React 的源码与原理解读(一):从创建React元素出发

这个专栏的写作是为了记录在阅读 React 源码和 React 源码构造思想的时候的心得体会编写的,这个专栏将从 React 的怎么样将一个 jsx 组件生成出对应的 DOM 出发,讲解 React 源码的运行原理和设计思路,组件的生命周期如何绑定,React 的虚拟DOM 为什么比真实的DOM 高效,并且简要谈谈 React Hooks 的设计。

2023-03-16 16:40:24 1696

原创 [失业前端恶补算法]JavaScript leetcode刷题top100(四):移动零、比特位计数、找到所有数组中消失的数字、二叉树的直径、汉明距离、合并二叉树

JavaScript 攻克 力扣 top 100热题4:移动零、比特位计数、找到所有数组中消失的数字、二叉树的直径、汉明距离、合并二叉树

2023-03-11 15:47:24 99

原创 [失业前端恶补算法]JavaScript leetcode刷题top100(三):相交链表、多数元素、反转链表、翻转二叉树、回文链表

JavaScript 攻克 力扣 top 100热题3:相交链表、多数元素、反转链表、翻转二叉树、回文链表

2023-03-10 21:56:12 422

原创 Rust Web 进阶(一):Rust异步编程(Tokio)

这一篇将讲解什么是和为什么进行异步编程,Rust 怎么样进行异步编程以及其机制,并且讲解目前 rust 常用的异步编程的函数库。本章的内容来自杨旭老师的教程:https://www.bilibili.com/video/BV16r4y187P4/?spm_id_from=333.999.0.0&vd_source=8595fbbf160cc11a0cc07cadacf22951

2023-03-10 21:04:04 2269

原创 Rust Web入门(八):打包发布

本教程笔记来自 杨旭老师的 rust web 全栈教程,项目的源代码可以查看 git:(注意作者使用的是 mysql 数据库而不是原教程的数据库)https://github.com/aiai0603/rust_web_mysql这是本教程的最后一节,我们将把我们之前编写的项目进行打包发布:

2023-03-09 10:03:43 1983

原创 Rust Web入门(七):WebAssembly

本教程笔记来自 杨旭老师的 rust web 全栈教程,项目的源代码可以查看 git:(注意作者使用的是 mysql 数据库而不是原教程的数据库)https://github.com/aiai0603/rust_web_mysql在之前的项目中,我们使用 rust 的模板引擎 Tera 编写一个项目,这节课我们来介绍一种 Rust 提供的更加高级的功能来编写前端应用—— WebAssembly,这是官方文档https://rustwasm.github.io/docs/book/

2023-03-08 20:44:42 1445

原创 Rust Web入门(六):服务器端web应用

本教程笔记来自 杨旭老师的 rust web 全栈教程,链接如下:学习 Rust Web 需要学习 rust 的前置知识可以学习杨旭老师的另一门教程项目的源代码可以查看 git:(注意作者使用的是 mysql 数据库而不是原教程的数据库)在之前的项目中,我们已经使用了 rust 编写了一些具有增删改查功能的接口并且进行测试,但是作为一款完整的应用,他还需要将这些数据展示到页面中的功能;

2023-03-06 21:26:05 1482

原创 Rust Web入门(五):完整的增删改查

本教程笔记来自 杨旭老师的 rust web 全栈教程,链接如下:学习 Rust Web 需要学习 rust 的前置知识可以学习杨旭老师的另一门教程项目的源代码可以查看 git:(注意作者使用的是 mysql 数据库而不是原教程的数据库)今天来实现有个 rust web 的完整增删改查的例子

2023-03-03 20:27:12 934

原创 [失业前端恶补算法]JavaScript leetcode刷题top100(二):对称二叉树、二叉树的最大深度、买卖过票的最佳时机、只出现一次的数字、环形链表

JavaScript 攻克 力扣 top 100热题2:对称二叉树、二叉树的最大深度、买卖过票的最佳时机、只出现一次的数字、环形链表

2023-03-01 09:43:56 161

原创 Rust Web入门(四):错误处理

本教程笔记来自 杨旭老师的 rust web 全栈教程今天来学习基于 rust 的web应用怎么样处理错误

2023-02-26 10:20:06 864

原创 Rust Web入门(三):连接数据库

本教程笔记来自 杨旭老师的 rust web 全栈教程,今天学习 rust web 这么连接数据库操作数据

2023-02-25 17:33:38 2087

原创 Rust Web入门(二):Actix

本教程笔记来自 杨旭老师的 rust web 全栈教程,链接如下:学习 Rust Web 需要学习 rust 的前置知识可以学习杨旭老师的另一门教程。

2023-02-20 11:03:16 2241

基于 opencv 图像切割和 crnn 数字识别的发票编号识别程序

本课题主要是研究发票基本信息识别问题,本文根据 OpenCV 和 CRNN 技术的研究现状,结合本项目的图像特点。从背景中将发票的基本信息:发票代码,发票号码,开票日期分割出来,将分割出来的图像放入已经训练好的 CRNN 模型中进行训练。最后进行字符识别。基于神经网络的字符识别的方式相对于传统的模板匹配的方式具有识别准确率高、通用性强的特点。 具体的实验流程为: 1. 读取图像,对图像进行预处理,灰度化并且进行滤波和高斯平滑。 2. 利用霍夫变换对图像进行几何水平矫正,以便于后续对指定区域的提取和识别操作。 3. 对原始图像在多个 RGB 通道下的特征进行提取,并对区域进行二值化和形态学操作, 连接成独立的几何区域 4. 根据需要提取区域的几何特征、例如空间坐标、长宽比等信息,对获得的区域进行 筛选和融合,得到目标区域 5. 将目标区域截取出来,使用 CRNN 模型进行预测,初步获取字符信息。 6. 对获取的信息进行进一步处理,利用字符的相似替代性结合上下文文本语义特征进 行识别信息优化。 7..整理输出获取的信息。

2023-07-18

NLP 自然语言处理 ape210k数据集

The ape210k proposed in recent years was adopted for testing. The data set consists of 210,000 primary school word questions, the main contents of which include Problen(question itself),Equation(calculation formula) and Answer(standard answer).

2023-07-15

js/计网/Vue/React/网络安全/数据结构/GIT 面试题整理

js/计网/Vue/React/网络安全/数据结构/GIT 面试题整理

2023-07-15

基于多种分类算法的毒蘑菇辨别性能对比代码

本课题选用了来自 Kaggle 的公开标准蘑菇数据集,每一个样本具有 22 项特征,包括外形、颜色、生存高度等常见性状,选择使用数据挖掘的常用方法逻辑回归、决策树、SVM、KNN、朴素贝叶斯和随机森林进行毒蘑菇辨别的实验,并对多种方法的实验结果进行可视化比较,具有一定的实用和参考意义。

2023-07-15

C# .NET winfrom 音乐播放器项目

使用 C# .NET winfrom 开发的音乐播放器项目,支持导入音乐,导入歌词文件,上一首下一首切换,展示播放进度等简单功能

2023-07-15

纯 html + css + javascript 小清新静态web网站

使用纯 html + css + javascript 实现的一个小清新 web 网页,分为首页,内容页,列表页、登录页、详情页、自带图片和音乐资源

2023-07-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除