.NET周刊【12月第2期 2024-12-08】

国内文章

终于解决了.net在线客服系统总是被360误报的问题(对软件进行数字签名)

https://www.cnblogs.com/sheng_chao/p/18581139

升讯威在线客服与营销系统由.net core和WPF开发,旨在开放、开源、共享。开发者为解决360与其他国产管家的误报问题,采用数字签名以提升软件安全性。使用Signcode.exe工具可为多种文件类型提供数字签名,增强可信度,并通过时间戳服务维持有效性,避免重签名。生成数字签名证书涉及自签名证书创建及导出,Signtool用于签名执行。制作根证书和子证书确保许可范围,通过Signcode完成文件签名。同时,强调证书安全及描述信息准确性,以防安全问题及证书吊销。该系统保障24/7稳定运行,面向.NET社区,倡导开源合作。

.NET Core 锁(Lock)底层原理浅谈

https://www.cnblogs.com/lmy5215006/p/18585588

本文介绍了CPU原子操作的概念,强调其类似于数据库事务。CPU能保证单条汇编的原子性,通过锁机制实现多条汇编的原子性。Interlocked类利用CPU锁保障原子性,尤其适用于处理8字节数据的long类型。在不同架构中,x86面对超过4字节的数据不保证原子性,需要使用64位架构或CPU锁机制。用户态锁和内核态锁各有优缺点,用户态锁在高并发情况下可能浪费CPU资源。volatile关键字用于避免编译器在多线程中错误优化。示例代码展示了使用Interlocked类实现简单自旋锁,以及通过SpinWait让CPU在无竞争获取锁时减轻负担。

ASP.NET Core 9.0 中新增的MapStaticAssets() 中间件

https://www.cnblogs.com/vipwan/p/18582297

Core 9.0版本新增了MapStaticAssets中间件,旨在替代UseStaticFiles,解决静态资源传输压缩、缓存效率低和指纹识别缺乏的问题。MapStaticAssets提供静态资产的压缩与指纹识别,采用基于内容的ETag,提升资源加载速度及用户体验。其在发送请求时会设置ETag、缓存标头,并使用压缩中间件。尽管如此,UseStaticFiles在处理虚拟文件等方面仍有其不可替代性。建议在可用情况下使用MapStaticAssets以提升系统性能。

基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件

https://www.cnblogs.com/Can-daydayup/p/18590574

在软件开发中,文件编码问题不可忽视。不同操作系统和编辑器可能导致乱码和编译错误。C#编写的Visual Studio扩展插件FileEncoding能够实时显示文档编码,并允许用户轻松修改。该插件提高了跨平台开发的效率,方便用户识别和调整文件编码。插件源代码和使用方法可以在市场和GitHub找到。此外,该项目已被收录到C#/.NET优秀项目列表中,有助于开发者了解最新动态。

Natasha v9.0 为 .NET 开发者提供 [热执行] 方案.

https://www.cnblogs.com/NMSLanX/p/18261797

Natasha v9.0 推出了热执行方案,支持在控制台和新版Asp.net Core架构中动态重编译项目,无需停止工程即可更新结果。这项技术通过语法树重写与动态编译实现,区别于传统的热重载。热执行能够快速响应文件改动,适合技术初学者和项目初期开发者。通过添加指令来优化重编译过程,如释放模式编译、异步代理、排除二义性引用等。项目支持.NET 3.0及以上版本,适用于不含Source Generator的版本。全新代理执行过程保证参数清晰,程序只在首次运行时执行特定代码。

一款基于 .NET + Blazor 开发的智能访客管理系统

https://www.cnblogs.com/Can-daydayup/p/18591424

访客管理在各类场所中变得越来越重要。传统方式低效且易出错,而基于.NET和Blazor的智能访客管理系统采用数字化手段优化管理流程,提高安全性与效率。系统具备快速注册、直观仪表板、多维度设置、即时警报等功能,支持多语言和多平台操作。项目同时开源,鼓励开发者参与与贡献,旨在提升C#/.NET领域的开发效率。该系统确保了访客管理的规范性和高效性,是现代机构管理的重要工具。

基于.NetCore开发博客项目 StarBlog - (32) 第一期完结

https://www.cnblogs.com/deali/p/18582026

本文记录了 StarBlog 项目的状态及 v2 版本的开发规划。作者自2022年以来开发该项目,以熟悉AspNetCore为目标,过程中也进行了Vue前端学习。作者意识到目前的项目过于基础,计划专注于其他项目,如StarSSO、EchoSubs等。此外,作者指出了当前版本的不足,包括接口方法使用不当、返回数据类型不合理等,并计划在v2中解决。此外,还规划了通过使用Next.js和React技术栈重构前后台,增强访问统计和文章编辑功能,引入AI功能和全文检索引擎。作者总结AspNetCore的功能,重点介绍异常处理和中间件的应用。

构建你的.NET Aspire解决方案

https://www.cnblogs.com/huangmingji/p/18588251

.NET Aspire 是一组工具和模板,用于构建云原生 .NET 应用程序。它通过处理特定问题的 NuGet 包支持小型互连微服务。它改善了云原生应用程序的构建体验,包括应用程序的编排和集成。 .NET Aspire 提供适用于 Visual Studio 和 CLI 的项目模板,确保应用程序与服务无缝连接。用户需要满足一定前提条件,如 .NET 8.0、Docker 和支持的 IDE。通过命令行工具安装模板后,用户可以创建最小的 .NET Aspire 项目,协调多服务的业务流程。该工具包支持多种测试项目格式,适用于不同类型的开发需求。

TesseractOCR-GUI:基于WPF/C#构建TesseractOCR简单易用的用户界面

https://www.cnblogs.com/mingupupu/p/18592170

本文介绍如何使用WPF/C#构建TesseractOCR用户界面,以提升命令行使用的便利性。首先,用户需在本地安装TesseractOCR并从GitHub下载依赖框架的压缩包。界面设计简单易用,支持中文和英文识别。作者说明了两种封装方法:一种是对命令行的封装,另一种是调用C++ API。当前实现以命令行封装为主,通过Visual Studio 2022和.NET 8开发。核心代码展示了如何执行OCR命令并处理输出,保持简单直观。

Asp.net MVC中的Http管道事件为什么要以Application_开头?

https://www.cnblogs.com/jikhww/p/18582958

文章讨论了在API请求结束时释放数据库连接的方法。作者提到通过实现IHttpModule和在web.config中增加配置可以达到目的,但比较麻烦。作者建议在Global.asax.cs中实现Application_EndRequest方法来释放连接,并提供了具体实现细节。随后,作者对为什么必须使用Application_EndRequest方法进行了源码分析,强调HttpApplicationFactory类与MvcApplication实例的关系,从而解释了Global.asax作为入口文件的原因。

使用 SemanticKernel 对接 Ollma

https://www.cnblogs.com/kklldog/p/18589711/sk-ollama

本文介绍了如何使用 Microsoft 的 SemanticKernel 框架与 Ollama 聊天服务对接。首先,需在本地安装 Ollama 服务和相应模型,之后创建 C# 控制台应用程序并安装必要的包。接着,引入相关命名空间并配置服务端点和模型 ID,设置聊天服务。然后,文章展示了一个简单的聊天循环,让用户输入和获取 Ollama 回复。最后,希望通过这篇博客,读者能更好地理解和使用这些工具。

构建你的.NET Aspire解决方案

https://www.cnblogs.com/huangmingji/p/18588251/build-your-dotnet-aspire-solution

.NET Aspire 是构建生产就绪云原生应用的工具集,提供 NuGet 包处理特定问题。云原生应用由微服务组成,.NET Aspire 提供一致性工具和模式,改善分布式应用开发体验。它支持本地开发环境的多项目编排和与常用服务的集成,提供适用于Visual Studio等工具的模板。前提条件包括 .NET 8.0 或 9.0、Docker 环境和合适的 IDE。.NET Aspire 提供多个模板,如入门应用、应用主机和测试项目。用户可创建和配置微服务,利用 NuGet 包集成 Redis、Postgres 服务。

dotnet core微服务框架Jimu ~ 基础网关

https://www.cnblogs.com/flamesky/p/18583715

文章介绍了如何使用.NET Core和Asp.Net Core创建网关,作为微服务的统一入口。步骤包括创建项目、添加引用和配置Startup文件,以支持Jimu和Consul进行服务发现和治理。网关通过HTTP协议接受请求,并使用TCP/IP协议调用微服务。最终实现了基本的网关功能,支持跨域和日志记录,以及服务治理的初步设置,包括服务器列表和健康状态的展示。

GZY.EFCore.BulkExtensions 支持达梦数据库的EF Core批量操作库详解

https://www.cnblogs.com/GuZhenYin/p/18588733

这篇文章介绍了EFCore.BulkExtensions库的改造,以支持.NET 5.0下的MySQL和达梦数据库。文章详细解释了两种数据库的批量操作实现,包括批量插入、批量修改和批量删除。对MySQL,使用SqlBulkCopy进行批量插入,利用on duplicate key update语法进行批量修改,使用DELETE INNER JOIN语法进行批量删除。对达梦数据库,采用DmBulkCopy进行批量插入,采用MERGE INTO语法进行批量修改,批量删除部分与MySQL类似。文章还强调了配置和操作的注意点,如MySQL的local_infile功能。尽管7.0+版本支持条件修改和删除,但批量处理功能尚未完全支持。

http请求超时, 底层发生了什么?

https://www.cnblogs.com/JulianHuang/p/18586745

文章介绍了OpenResty模拟超时服务,通过Golang和.NET的HttpClient默认设置,解释了客户端超时的现象及其原因。文中使用的.NET代码设置了3秒超时,结果在客户端抛出异常,而服务端日志显示正常200响应。使用Wireshark分析TCP包,可见客户端在超时后终止连接,但服务端仍继续处理。这解释了服务端监控无5xx错误的现象。同时说明服务器通过CancellationToken感知客户端取消请求以记录过期请求。

开源 - Ideal库 - Excel帮助类,TableHelper实现(三)

https://www.cnblogs.com/hugogoos/p/18580410

该内容讲解了如何将DataTable转换成对象集合的方法。首先,通过反射来实例化对象和赋值,将表的列名与类的属性名对比,若属性设置了Description特性,则使用特性值匹配列名。实现过程中,需确保类类型合法且表格可以转换,处理时先用object装箱再拆箱结构体。代码片段展示了具体实现,通过单元测试验证转换的正确性。

开源 - Ideal库 - Excel帮助类,ExcelHelper实现(五)

https://www.cnblogs.com/hugogoos/p/18589718

本文详细介绍了ExcelHelper类的单元测试,包括读取Excel文件到DataSet的不同方法。代码示例展示了如何验证读取的工作表数量及其具体内容,包括表名和数据。文中对各种用例进行了测试,如读取所有工作簿、从特定工作簿读取、处理不存在的工作簿等。测试确保了方法的可靠性和准确性,为Excel数据处理提供了实用的技术支持。

WinForm 开源组件 Realtiizor

https://www.cnblogs.com/chenyishi/p/18593064

Realtiizor 是一款用于 WinForm 应用的现代组件库,具备美观的界面设计和丰富易用的组件。它采用 Material Design 元素,提升了应用程序的视觉效果,吸引用户。组件库中包含多种定制化的按钮和文本框,简化了开发流程,缩短了开发时间。Realtiizor 在 .NET 8 环境下运行稳定,与常见库兼容,性能优化良好。安装过程简单,通过 NuGet 包管理器即可实现。在实际应用中,开发者能够轻松创建样式独特的窗体。通过提供的示例,展示了如何构建用户信息录入界面。整体来说,Realtiizor 提供了高效率和良好体验的开发工具.

主题

OpenSilver 3.1 简介:首款适用于 VS Code 的 XAML 设计器、现代 UI 主题、WPF Everywhere 等

https://opensilver.net/announcements/3-1/

发布 v3.0.3 / v3.0.301(3.0.308) · MessagePack-CSharp/MessagePack-CSharp

https://github.com/MessagePack-CSharp/MessagePack-CSharp/releases/tag/v3.0.3 https://github.com/MessagePack-CSharp/MessagePack-CSharp/releases/tag/v3.0.301

  • neue cc - 关于与 SourceGenerator 兼容的 MessagePack for C# v3 的发布和未来

发布 v9.0.2 · npgsql/npgsql

https://github.com/npgsql/npgsql/releases/tag/v9.0.2

宣布 Oracle EF Core 9

https://medium.com/@alex.keh/announcing-oracle-ef-core-9-74f627a01891

调用异步功能:.NET 9 中的 WinForms 有何等待 - .NET 博客

https://devblogs.microsoft.com/dotnet/introducing-winforms-async-apis/

降临节日历

  • 在配备 NPU 的 Copilot+ PC 上运行 NPU - Qiita
  • 关于使 WinUI3 MarkdownControl 与 TextMate 兼容的故事 - Qiita
  • 用 C# 操作 vJoy(创建 feeder)- Qiita
  • 启用Datadog的连续分析器后问题立即得到解决 - Qiita
  • 如何使用 MAUI 处理程序 - Qiita
  • 关于 C# 中尝试创建通货膨胀游戏时的 BigInteger - Qiita
  • TextMateSharp 简介 - Qiita
  • [C#] 使用表达式树和源生成器的高性能查询生成器简介 - Qiita
  • 序列化/反序列化具有大量对象的json数组 - Qiita
  • [C#] 关于.NET 9引入的OrderedDictionary - Qiita
  • 我创建了一个使用 Cloud Vision API 记录收据的程序 - Qiita
  • [C# .NET 9.0] 尝试使用 InlineArray 创建值类型字典 - Qiita
  • .NET9、C#13 的新功能拾取 - Qiita
  • 关于 Win2D 第 6 部分 PixelShaderEffect - Qiita
  • Heroku 上对 .NET 的官方支持 - Qiita
  • [C#] 遗留代码模式和现代改进方法 - Qiita
  • Win2D 第 5 部分 图像加载和效果 - Qiita
  • [C#] 使用模式匹配简洁地编写条件分支 - Qiita
  • 关于Win2D第5部分画线-Qiita- 关于不喜欢Dim的话题-Qiita
  • .NET 9 中添加到 LINQ 的方法 - Qiita

文章、幻灯片等

轻松发布到 Linux 上的 Azure WebJobs - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/effortless-publishing-to-azure-webjobs-on-linux/

使用 YamlDotNet 源生成器进行本机 AOT

https://andrewlock.net/using-the-yamldotnet-source-generator-for-native-aot/

C# 性能调优示例#1

https://zenn.dev/boostdraft/articles/bd86e264f99d89

GraphQL 入门#1 与 Strawberry Shake (.NET)

https://zenn.dev/masakura/articles/606435acb359cb

  • GraphQL #2 with Strawberry Shake (.NET),由 JetBrains Rider 编辑
  • 使用 Strawberry Shake (.NET) 连接到 GraphQL #3 Shopify
  • GraphQL #4 在 Strawberry Shake (.NET) 中自定义到 GraphQL 类型的映射
  • 在 Strawberry Shake (.NET) 中使用 GraphQL #5 GraphQL 联合

使用 Blazor 切换亮/暗模式 + 将保存模式切换到本地存储 - Qiita

https://qiita.com/masayahak/items/8173bd61845bb5774370

将本地 AI 模型与 .NET Aspire 结合使用 - .NET 博客

https://devblogs.microsoft.com/dotnet/local-ai-models-with-dotnet-aspire/

C# 程序员 JavaScript 备忘单(LINQ 版)

https://zenn.dev/zead/articles/js-cheat-sheet-for-linq

.NET 10 中 LINQ LeftJoin 运算符的提案

https://medium.com/@malarsharmila/proposal-for-a-linq-leftjoin-operator-in-net-10-af74635079a6

尝试将通用主机与 WPF 结合使用

https://zenn.dev/microsoft/articles/wpf-generic-host

继续使用非阻塞代码清理 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/keep-working-with-non-blocking-code-cleanup/

释放新潜力:.NET 9 中的实体框架核心增强功能

https://dev.to/leandroveiga/unlocking-new-pottial-entity-framework-core-enhancements-in-net-9-1875

在 C# 中模拟 gRPC 客户端:Fake It Till You Make It

https://dev.to/maximiliysiss/mocking-grpc-clients-in-c-fake-it-till-you-make-it-4d24

事件溯源很简单! :用 400 行创建的简单内存框架

https://zenn.dev/jtechjapan_pub/articles/f7968a3f2fb6d5

在 Uno 平台中构建 Bluesky 客户端

https://mzikmund.dev/blog/building-a-bluesky-client-in-uno-platform

2024 年运行 100 万个并发任务需要多少内存?

https://hez2010.github.io/async-runtimes-benchmarks-2024/

使用 Dependabot 管理 .NET SDK 更新 - .NET 博客

https://devblogs.microsoft.com/dotnet/using-dependabot-to-manage-dotnet-sdk-updates/

在 Visual Studio 中引入 GitHub Copilot 聊天的代码引用 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/introducing-code-referencing-for-github-copilot-chat-in-visual-studio/

用for语句检查TLB效果 - Qiita

https://qiita.com/pea1205/items/6279235179f2b339ff6a

内联返回值如何简化 Visual Studio 2022 中的调试 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/how-inline-return-values-simplify-debugging-in-visual-studio-2022/

从转换为 UUID v7 的 Guid 中提取时间戳 - Qiita

https://qiita.com/higege-amdeker/items/098cd7414a11af8d83cb

使用对接窗口创建信息丰富的应用程序 AvalonDock - Qiita

https://qiita.com/NSS_FS_ENG/items/e16ea3c25e42608c4a25

SRTP推荐

https://zenn.dev/midoliy/articles/a9048d2eada7ba

如何在 MVVM 架构中使用 Microsoft.Extensions.DependencyInjection ~ with Dog

https://zenn.dev/sakaki_web/articles/42c5fdf8f14cf0

在 Visual Studio 17.12 中引入复制 Git 永久链接功能 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/introducing-the-copy-git-permalink-feature-in-visual-studio-17-12/

本文由博客一文多发平台 OpenWrite 发布!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/938283.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【十进制整数转换为其他进制数——短除形式的贪心算法】

之前写过一篇用贪心算法计算十进制转换二进制的方法,详见:用贪心算法计算十进制数转二进制数(整数部分)_短除法求二进制-CSDN博客 经过一段时间的研究,本人又发现两个规律: 1、不仅仅十进制整数转二进制可…

舵机SG90详解

舵机,也叫伺服电机,在嵌入式开发中,舵机作为一种常见的运动控制组件,具有广泛的应用。其中,SG90 舵机以其高效、稳定的性能特点,成为了许多工程师和爱好者的首选,无论是航模、云台、机器人、智能…

如何为IntelliJ IDEA配置JVM参数

在使用IntelliJ IDEA进行Java开发时,合理配置JVM参数对于优化项目性能和资源管理至关重要。IntelliJ IDEA提供了两种方便的方式来设置JVM参数,以确保你的应用程序能够在最佳状态下运行。本文将详细介绍这两种方法:通过工具栏编辑配置和通过服…

跌倒数据集,5345张图片, 使用yolo,coco json,voc xml格式进行标注,平均识别率99.5%以上

跌倒数据集,5345张图片, 使用yolo,coco json,voc xml格式进行标注,平均识别率99.5%以上 ,可用于某些场景下识别人是否跌倒或摔倒并进行告警。 数据集分割 训练组99% 5313图片 有效集0&am…

nods.js之nrm安装及使用

nods.js之nrm安装及使用 一、简介二、安装 nrm与使用三、报错解决 一、简介 nrm 是 Node.js 的一个工具,用于管理和切换 npm 源(Registry)。它使得在不同的 npm 镜像源之间切换变得非常容易,尤其对于那些经常因为网络问题或速度原…

selenium自动化测试基础知识

目录 一、概念知识 (一)三大核心组件 (二)Selenium 自动化测试的工作原理 (三)Selenium 支持的操作 (四)Selenium 自动化测试的优点 (五)Selenium 自动化测试的缺点 (六)Selenium 自动化测试的应用场景 总结 二、实操例子 使用前提--安装步骤 注意事项 (一)浏览器的…

Cisco Packet Tarcer配置计网实验笔记

文章目录 概要整体架构流程网络设备互连基础拓扑图拓扑说明配置步骤 RIP/OSPF混合路由拓扑图拓扑说明配置步骤 BGP协议拓扑图拓扑说明配置步骤 ACL访问控制拓扑图拓扑说明配置步骤 HSRP冗余网关拓扑图拓扑说明配置步骤 小结 概要 一些环境配置笔记 整体架构流程 网络设备互连…

RNN LSTM Seq2Seq Attention

非端到端: data -》 cleaning -》 feature Engining (70%-80%工作 设计特征)-》 分类器 -》预测 端到端 End-to-End: data -》 cleaning -》Deep learning(表示学习,从数据中学习特征) -》…

【AI日记】24.12.17 kaggle 比赛 2-6 | 把做饭看成一种游戏 | 咖喱牛肉

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】 工作 参加:kaggle 比赛 Regression with an Insurance Dataset时间:9 小时睡得好很重要 读书 书名:富兰克林自传时间:0.5 小时阅读原因:100 美元纸…

电脑为什么会提示“msvcr120.dll缺失”?“找不到msvcr120.dll文件”要怎么解决?

电脑故障排查指南:揭秘“msvcr120.dll缺失”的真相与解决方案 在软件开发与日常维护的广阔天地里,遇到系统报错或文件缺失的情况可谓家常便饭。今天,我将带领大家深入探讨一个常见的系统提示——“msvcr120.dll缺失”,并揭秘其背…

Kotlin复习

一、Kotlin类型 1.整数 2.浮点 显示转换: 所有数字类型都支持转换为其他类型,但是转换前会检测长度。 toByte(): Byte toShort(): Short toInt(): Int toLong(): Long toFloat(): Float toDouble(): Double 不同进制的数字表示方法(为了提高…

【BUG】记一次context canceled的报错

文章目录 案例分析gorm源码解读gin context 生命周期context什么时候cancel的什么时候context会被动cancel掉呢? 野生协程如何处理 案例分析 报错信息 {"L":"ERROR","T":"2024-12-17T11:11:33.0050800","file"…

召回系统介绍

一、以Lucene为例介绍召回系统 1、倒排检索 Lucene的倒排索引由 Term Index -> TermDictionary -> Posting List 三层组成,倒排检索实际上就是通过分词Term查询到倒排拉链,然后对所有拉链进行合并。 Term-> Posting List,可以直接…

Ubuntu22.04系统下MVS运行海康威视工业相机

之前的开发环境是Ubuntu16.04,最近因项目需求换到了Ubuntu22.04系统,安装了ROS2-humble,重新记录下开发过程。 Ubuntu16.04系统可参考: VMware虚拟机中Ubuntu16.04系统下通过MVS运行海康威视工业相机 Linux环境中对海康威视工业相…

慧知开源充电桩平台 - OCPP充电桩协议越南充电平台:多语种支持、多元支付、本地化策略

越南充电新体验:多语种支持,便捷支付! 助力充电桩运营本土化落地,为越南市场提供定制化解决方案 随着全球电动汽车市场的迅猛发展,越南作为东南亚新兴的汽车市场,对电动汽车充电基础设施的需求也在急剧增…

基于Clinical BERT的医疗知识图谱自动化构建方法,双层对比框架

基于Clinical BERT的医疗知识图谱自动化构建方法,双层对比框架 论文大纲理解1. 确认目标2. 目标-手段分析3. 实现步骤4. 金手指分析 全流程核心模式核心模式提取压缩后的系统描述核心创新点 数据分析第一步:数据收集第二步:规律挖掘第三步&am…

华为ensp--BGP路径选择-Preferred Value

学习新思想,争做新青年。今天学习的是BGP路径选择-Preferred Value 实验目的 理解BGP路由信息首选值(Preferred Value)的作用 掌握修改Preferred Value属性的方法 掌握通过修改Preferred Value属性来实现流量分担的方法 实验拓扑 实验要求…

如何在OpenCV中运行自定义OCR模型

我们首先介绍如何获取自定义OCR模型,然后介绍如何转换自己的OCR模型以便能够被opencv_dnn模块正确运行,最后我们将提供一些预先训练的模型。 训练你自己的 OCR 模型 此存储库是训练您自己的 OCR 模型的良好起点。在存储库中,MJSynthSynthTe…

“从零到一:揭秘操作系统的奇妙世界”【操作系统的发展】

1.手工操作阶段 此时没有OS,用户采用人工操作方式进行。 方式:程序员在纸带机上打孔---计算机读取---结果输出到纸袋机上---程序员取走结果 缺点:耗时长,难度大、用户独占全机、人机速度矛盾导致资源利用率低 2.单批道处理系统 引…

二叉树理论基础篇

这里写目录标题 二叉树的种类**满二叉树(Full Binary Tree)****完全二叉树(Complete Binary Tree)****二叉搜索树(Binary Search Tree,BST)**平衡二叉搜索树 二叉树的存储方式二叉树的遍历方式二…