自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(319)
  • 收藏
  • 关注

原创 DDD领域驱动设计总结和C#代码示例

DDD(领域驱动设计)是一种软件设计方法,它强调以业务领域为核心来驱动软件的设计和开发。DDD 的设计初衷是为了解决复杂业务领域的设计和开发问题,它提供了一套丰富的概念和模式,帮助开发者更好地理解和建模业务领域,从而提高软件的质量和可维护性。

2024-04-25 15:41:34 1041

原创 4款值得推荐的AI辅助编程工具(支持C#语言)

在这个AI迅速发展的阶段,涌现出了一大批好用的AI辅助编程工具。AI辅助编程工具能够提高开发效率、改善代码质量、降低bug率,是现代软件开发过程中的重要助手。今天大姚给大家分享4款AI辅助编程工具(并且都支持C#语言),希望对大家有所帮助。

2024-04-25 14:11:55 597

原创 两种解法搞定Swap Nodes in Pairs算法题

递归虽然好,但是也会有一些性能上的担忧,毕竟递归调用太深,可能会引发堆栈溢出。后面再仔细推敲了一下,完全可以用2个指针不断进行交换,可以不用递归。最近还是很喜欢用golang来刷算法题,更接近通用算法,也没有像动态脚本语言那些语法糖,真正靠实力去解决问题。最终它们的时间复杂度是O(N),空间复杂度O(1),都非常棒。如果是你,你更喜欢哪种解法呢?欢迎在评论区留言交流。

2024-04-19 16:14:09 191

原创 十分钟学会微调大语言模型

在之前的文章中,我分享了一些使用大语言模型开发应用的方法,也介绍了几个开源大语言模型的部署方式。有同学给我留言说想知道怎么训练自己的大语言模型,让它更贴合自己的业务场景。完整的大语言模型训练成本比较高昂,不是我们业余玩家能搞的,如果我们只是想在某个业务场景或者垂直的方面加强大模型的能力,可以进行微调训练。本文就来介绍一种大语言模型微调的方法,使用的工具是我最近在用的 Text Generation WebUI,它提供了一个训练LoRA的功能。

2024-04-19 14:40:23 936

原创 低代码与前端开发的未来:走向更高效的创新

低代码开发平台正在改变着前端开发的方式,为开发者提供了更高效、更灵活的开发工具和流程。随着技术的不断演进,低代码平台将继续发挥其在前端开发中的重要作用,推动着创新的加速和规模化。未来,随着低代码平台的不断完善和发展,前端开发将迎来更加美好的时代。---这篇文章着眼于当前前端开发中的低代码趋势,对其优势、挑战以及未来发展方向进行了探讨,希望能够为读者提供对未来前端开发趋势的一些思考和启示。

2024-04-18 16:54:06 399

原创 这些Git事故灾难, 你经历过几个?

关于Git, 相信大家最常用的就是pull和push. 但随着协作规模的提升, 遇到的问题也会越来越多. 本篇文章并不科普一些命令的详细用法, 更多的是分享在工作中遇到的Git场景问题以及踩过的坑以上都是笔者在多年的实际工作中出了事故踩了坑而得出的总结, 不知道你是否也有类似的git事故经验呢?欢迎在评论区分享.前夕Sama引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构。

2024-04-18 16:22:32 1171

原创 物联网浏览器(IoTBrowser)-整合机器学习yolo框架实现车牌识别

最后,找到了一个效率很高的方式,使用yolo导出onnx模型,yolo数据集使用Python训练和导出onnx,最后在.Net下进行调用即可。最近一段时间在研究AI技术在.Net平台的使用,目前AI绝大部分是使用Python开发,偶然一次在头条看到一篇ML.NET的介绍,是Net平台下开放源代码的跨平台机器学习框架。IoTBrowser增加Dynamic Api插件框架,另外找了一个Yolov5Net包,默认支持Net6,后面移植到.Net Framework下。4.使用ML.NET调用模型。

2024-04-18 13:46:15 324

原创 C++ 递归与面向对象编程基础

递归是一种强大的工具,可以用于解决各种编程问题。但是,重要的是要谨慎使用递归,并确保您的代码不会陷入无限循环。C++ 面向对象编程是一种强大的工具,可用于创建可维护、可扩展和易于理解的代码。通过理解类、对象、属性和方法等基本概念,您可以开始构建面向对象的 C++ 程序。小万哥丶引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构。

2024-04-17 14:05:56 885

原创 基于Material Design风格开源、易用、强大的WPF UI控件库

MaterialDesignInXamlToolkit 是一个开源、易于使用、强大的 WPF UI 控件库,旨在帮助开发人员在 C# 和 VB.Net 中实现 Google 的 Material Design 风格的用户界面。该框架提供了一组丰富的控件、样式和效果,使开发人员能够轻松创建现代化、具有吸引力的应用程序。WPF 是一个强大的桌面应用程序框架,用于构建具有丰富用户界面的 Windows 应用。它提供了灵活的布局、数据绑定、样式和模板、动画效果等功能,让开发者可以创建出吸引人且交互性强的应用程序。

2024-04-17 11:07:04 625

原创 Spring开发:动态代理的艺术与实践

JDK动态代理是Java语言提供的一种基于接口的代理机制,允许开发者在运行时动态地创建代理对象,而无需为每个类编写具体的代理实现。这种机制主要通过类和接口实现。下面是JDK动态代理的核心要点和如何使用它们的概述。使用步骤定义接口:首先定义一个或多个接口,代理对象将实现这些接口。实现接口:创建一个类,它实现上述接口,提供具体的实现逻辑。创建实现:定义一个的实现,这个实现中的invoke方法可以包含自定义逻辑。创建代理对象:使用方法,传入目标对象的类加载器、需要代理的接口数组以及。

2024-04-16 17:54:29 1355

原创 从零开始学Spring Boot系列-SpringApplication

通过在classpath下添加一个banner.txt或设置banner.location来指定相应的文件可以改变启动过程中打印的banner。如果这个文件有特殊的编码,你可以使用banner.encoding设置它(默认为UTF-8)。如果想以编程的方式产生一个banner,可以使用SpringBootApplication.setBanner(…)方法。使用org.springframework.boot.Banner接口,实现你自己的printBanner()方法。

2024-04-08 16:23:34 1025 2

原创 一个库帮你快速实现EF Core数据仓储模式

EF Core是我们.NET日常开发中比较常用的ORM框架,今天大姚要分享的内容是如何使用EF Core Generic Repository通用仓储库来快速实现EF Core数据仓储模式。该库是EF Core ORM的通用仓储库实现,旨在简化开发人员为每个.NET Core和.NET项目编写仓储层的工作。通过使用这个库,开发人员可以更轻松地管理数据访问层,提高开发效率。

2024-04-08 14:09:50 933

原创 AIGC重塑金融:AI大模型驱动的金融变革与实践

AI大模型作为人工智能领域的重要分支,正在深刻改变着金融行业的面貌。通过引入AI大模型,金融机构可以实现业务的自动化、智能化和精细化,提高服务质量和竞争力。同时,AI大模型的应用还有助于推动金融行业的数字化转型和创新发展,实现金融行业的可持续发展。展望未来,随着技术的不断进步和应用场景的拓展,AI大模型在金融领域的应用将更加广泛和深入。我们期待看到更多金融机构积极探索和应用AI大模型,推动金融行业的数字化转型和创新发展,为客户提供更加优质、高效的金融服务。

2024-04-01 17:31:17 1137 1

原创 强烈推荐:2024 年12款 Visual Studio 亲测、好用、优秀的工具,AI插件等

CodeMaid是一个开源的Visual Studio扩展,用于清理和简化我们的C#,C++,F#,VB,PHP,PowerShell,R,JSON,XAML,XML,ASP,HTML,CSS,LESS,SCSS,JavaScript和TypeScript编码。目前,Codeium 提供 70+ 种语言的代码自动完成和聊天功能,具有闪电般的速度和最先进的建议质量。支持70+编程语言:Javascript,Python,Typescript,PHP,Go,Java,C,C++,Rust,Ruby等。

2024-04-01 16:04:23 1699

原创 SpringBoot多环境配置

在实际项目的开发过程中,我们程序往往需要在不同环境中运行。例如:开发环境、测试环境和生产环境。每个环境中的配置参数可能都会有所不同,例如数据库连接信息、文件服务器等等。Spring Boot 提供了非常方便的方式来管理这些不同环境的配置。是Spring框架用于处理不同环境配置的解决方案。Profile可以帮助我们在不改变应用代码的情况下,根据当前环境动态地激活或者切换不同的配置。为每个Profile提供了一个独立的(或)配置文件。默认情况下,使用的是文件。当你激活一个特定的Profile时,

2024-04-01 14:07:42 799 1

原创 低代码与数智化OA:重塑企业办公新生态

随着信息技术的飞速发展,企业对于办公自动化的需求日益强烈。传统的OA系统已经难以满足现代企业的多样化需求,而低代码与数智化OA的结合,正成为推动企业办公升级的重要力量。

2024-03-29 17:07:20 946

原创 OGNL表达式注入分析 _

如一开始的例子#a=new java.lang.String("calc"),定义了一个字符串常量。

2024-03-29 16:09:55 795

原创 大模型提示工程之Prompt框架和示例

行动(Action): 进行市场调研,设计用户友好的界面,开发核心健康跟踪功能,测试应用并收集用户反馈。情境(Scenario): 用户对现有的健康管理应用感到不满,因为它们通常操作复杂,功能繁多而不实用。步骤(Steps): 进行市场调研,设计UI/UX,开发应用功能,进行测试,收集反馈,发布应用。结果(Result): 用户能够轻松管理自己的健康,应用的用户满意度和市场占有率提高。任务(Task): 开发一个新的手机应用,旨在帮助用户更好地管理他们的日常健康。

2024-03-29 13:51:04 1043

原创 低代码开发:助力企业实现数字化运维体系搭建

随着数字化浪潮的推进,企业对于快速响应市场变化、提升运营效率的需求日益迫切。在这一背景下,低代码开发(Low-Code Development)作为一种新兴的软件开发方法,正逐渐受到企业的青睐。低代码开发不仅简化了开发过程,降低了技术门槛,而且能够加速企业的数字化运维体系搭建,提升整体竞争力。

2024-03-28 17:04:30 1408

原创 RowHammer 攻击:内存的隐形威胁

是一种相对较新的攻击方式,它利用了现代动态随机存取存储器(DRAM)的物理缺陷,这种攻击方式不同于传统的软件漏洞利用,它直接针对硬件的弱点。在操作完成后,行缓冲器内的数据会写入原来的存储单元行之中,同时存储单元中的电容充电。所以,不论是读还是写数据,存储单元都会充放电。在内存如“白菜”价的今天,不改变内存电路板面积大小的前提下,为了能存储更多的数据,只能将存储单元排列的越来越近,密度大幅度增加。如下图所示,第 1、3 行是攻击行,这两行中间是被攻击行,攻击行不停地充放电,中间行大概率会出现比特翻转。

2024-03-28 15:31:30 663

原创 如何构建一台机器学习服务器

系统安装这里就不再赘述,推荐使用ventory作为PE盘,来安装系统,这样方便快捷,可同时包含多个镜像,无需重复制作,需要注意的是在安装系统的时候需要手动进行分区,我们可以看一下我的分区结果:在安装系统之后请先确认系统版本等内容和预想一致:使用命令:结果:GCC版本:由于后边要配置cuda信息,这里就直接先把需求放上来,各位要看符不符合要求:下图由CUDA官方文档发布:1. Introduction — Installation Guide for Linux 12.4 docume

2024-03-28 14:09:09 1202

原创 聊聊多模态大模型处理的思考

最终来看,第一个方案肯定是最合适的;但如果对于选型的大模型不支持多模态的情况下,考虑开源实现或是第二张方案,但要综合调研其带来的影响,并不是简单的转文本就行。第三种,目前我没有找到合适的Embedding模型支持多模态,后续继续探讨挖掘下。又见阿郎引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构。

2024-03-27 17:06:12 995

原创 一口气搞懂分库分表 12 种分片算法,大厂都在用

本文是《ShardingSphere5.x分库分表原理与实战》系列的第五篇文章,我们一起梳理下框架中的核心部分分片策略和分片算法,其内部针为我们提供了多种分片策略和分片算法,来应对不同的业务场景,本着拿来即用的原则。这次将详细介绍如何在中实战 5 种分片策略和 12 种分片算法,自定义分片算法,比较它们的应用场景以及优劣。全部demo案例GitHub本文中我们讲解了所支持的12种分片算法,每种算法都具有独特的特点。在实际应用中,需要结合具体的业务场景来灵活选择和应用适合的分片算法。程序员小富。

2024-03-27 16:01:58 667

原创 低代码与供应链行业的融合:开启数字化新时代

低代码开发平台是一种基于可视化建模、自动化生成代码和模块化组件的开发环境。它大大降低了传统软件开发的复杂性和门槛,使非专业开发人员也能够通过简单的拖拽和配置,快速构建出功能强大的应用程序。低代码技术的出现,极大地缩短了软件开发周期,提高了开发效率,为企业快速响应市场变化提供了有力支持。低代码与供应链行业的融合,不仅推动了企业的数字化转型,更开启了供应链行业数字化新时代的大门。面对未来,我们应积极拥抱低代码技术,充分利用其优势,为供应链行业的持续发展和企业的转型升级注入新的活力。

2024-03-26 17:12:33 909

原创 C#调用C++ (使用C++/CLI)

C++/CLI(C++ Common Language Infrastructure)是一种允许在 .NET 平台上创建托管代码(managed code)和非托管代码(unmanaged code)之间互操作的语言。其原理可以概括如下:编译器支持: C++/CLI 编译器能够编译同时包含托管和非托管代码的源文件。这使得在同一个项目中可以混合使用 C++ 和 C# 或其他 .NET 语言。托管和非托管代码的桥梁: C++/CLI 提供了语法和关键字,允许你在同一个文件中编写托管代码和非托管代码。

2024-03-26 16:13:17 1187

原创 什么是正向代理和反向代理?

从字面意思上看,代理就是代替处理的意思,一个对象有能力代替另一个对象处理某一件事。代理,这个词在我们的日常生活中也不陌生,比如在购物、旅游等场景中,我们经常会委托别人代替我们完成某些任务。在技术领域,这个概念也被广泛应用,尤其是在计算机网络通信和程序设计中,代理扮演着相当重要的角色,涉及控制访问、安全保护、能力扩展等复杂而强大的方面。

2024-03-26 15:16:39 710

原创 AI大模型学习:理论基石、优化之道与应用革新

随着科技的飞速发展,人工智能(AI)已成为推动社会进步的重要力量。作为AI领域的核心,大模型学习技术更是引领着这场科技革命的风潮。本文将从理论基石、优化之道和应用革新三个方面,深入剖析AI大模型学习的内涵与价值。

2024-03-25 17:30:10 1074

原创 是时候来唠一唠synchronized关键字了,Java多线程的必问考点!

关于synchronized的介绍其实远没有结束,还有很多细节可以值得学习,我们会在后面的文章中逐渐补充,避免文章过长,读者失去阅读的耐心!JavaBuild引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构。

2024-03-25 15:45:46 984

原创 15 分钟带你感受 CSS :has() 选择器的强大

最近看到了许多关于:has()选择器的知识点,在此总结下来。MDN 对:has()选择器 的解释是这样的:CSS 函数式:has()表示一个元素,如果作为参数传递的任何在锚定到该元素时,至少匹配一个元素。这个伪类通过把作为参数,提供了一种针对引用元素选择父元素或者先前的兄弟元素的方法。下面一起来感受下:has()选择器的强大之处吧。:has()

2024-03-25 14:02:38 1104

原创 低代码与AI金融时代:重塑金融行业的未来

随着科技的不断进步,金融行业正迎来一场由低代码和人工智能(AI)驱动的变革。这场变革不仅将重塑金融行业的业务模式和运营流程,还将为消费者带来更便捷、更智能的金融服务体验。本文将深入探讨低代码与AI金融时代的融合,分析其对金融行业的影响,并展望未来的发展趋势。

2024-03-22 16:41:47 543

原创 使用JMeter从JSON响应的URL参数中提取特定值

在使用Apache JMeter进行API测试时,我们经常需要从JSON格式的响应中提取特定字段的值。这可以通过使用JMeter内置的JSON提取器和正则表达式提取器来完成。以下是一个具体的例子,展示了如何从一个JSON响应中提取rowId的值,同时处理字符串终止符。我们的目标是提取rowId参数的值。这个值不是直接作为JSON对象的一个属性呈现的,而是作为一个URL的一部分,嵌套在href字段中。因此,我们需要两步来提取这个值。

2024-03-22 15:16:07 637

原创 开源一个教学型分库分表示例项目 shardingsphere-jdbc-demo

在笔者心中,是高并发解决方案三剑客。分库分表之所以被广泛使用,因为工程相对简单,但分库分表并不仅仅是分片,还是需要考虑如何扩缩容(全量同步、增量同步、数据校验等)。因此笔者做了一个教学型分库分表示例项目 ,计划将分库分表的技术体系都实际演示一遍。:使用 shardingsphere-JDBC 4.X 实现分库分表功能:使用 shardingsphere-JDBC 5.X 实现分库分表功能: 基于 grpc 实现一个简单的服务端 ID 生成器下面我们展示如何运行。

2024-03-22 14:04:18 1186

原创 AIGC:释放生成式AI的无限潜能,打造你的专属外脑

随着人工智能技术的飞速发展,生成式AI(AIGC)已经成为推动科技进步的重要力量。本文将探讨如何利用AIGC技术,将其打造成我们的专属外脑,提升我们的工作效率和创造力。

2024-03-21 17:07:58 1169

原创 程序员必须了解的 10个免费 Devops 工具

DevOps 是一组实践和方法,将开发(创建软件的人员)和运维(部署和维护软件的人员)团队聚集在一起。这有什么意义吗?为什么 DevOps 这么重要?让我们以一种易于理解的方式去了解它。想象一下,你是一个拼图团队的一员。开发团队负责设计和制作拼图,而运维团队负责将拼图拼在一起并确保拼完后的正确的。在传统流程中,开发团队和运维团队各干各的,缺乏交流,这就导致交付延迟和最终产品不完全合适。而 DevOps 确保每个人从一开始就一起工作,分担责任并持续沟通,以更快更有效地方式解决问题。

2024-03-21 16:21:41 1208

原创 深度解读UUID:结构、原理以及生成机制

RFC 4086是一份由IETF制定的最佳当前实践(Best Current Practice, BCP)文档,其标题为“Security Requirements for Randomness”,该文档详细阐述了在实现安全协议与系统时所需的随机数生成器的要求和特性,确保生成的随机数具有足够的不可预测性和熵,能满足各类安全应用,包括但不限于密码学应用中的随机性需求。Nano ID:虽然也致力于生成唯一的ID,但由于其较短的长度,在没有额外存储或算法保证的情况下,唯一性风险相对较大。

2024-03-21 13:47:36 943

原创 低代码与前端项目部署:革新软件开发的新篇章

随着科技的不断进步,软件开发领域也在经历着前所未有的变革。其中,低代码技术与前端项目部署的结合,为开发者带来了更高效、便捷的开发体验。本文将对低代码与前端项目部署进行深入探讨,分析它们的优势、应用场景以及未来发展趋势。

2024-03-20 16:55:41 1150

原创 .NET开源免费的Windows快速文件搜索和应用程序启动器

Flow Launcher 是一款方便实用的 Windows 文件搜索和应用程序启动器,能够帮助你快速查找文件、启动应用程序和执行系统操作,提高工作效率和操作便利性。并且生态完善,有插件商店,你可以查看完整的插件列表,或通过 "设置 "中的 "插件商店 "菜单快速安装插件。

2024-03-20 15:37:28 205

原创 Redis集群模式和常用数据结构

在这种模式下,主节点(Master)负责处理写入操作,而从节点(Slave)则是主节点的副本,用于处理读取操作和提供数据冗余。哨兵节点(Sentinel)监控主节点和从节点的状态,当主节点出现故障时,哨兵会自动将一个从节点升级为新的主节点,并通知其他从节点和客户端新的主节点地址,以此来保证Redis服务的高可用性。适用场景:字符串是最基本的类型,可以存储任何形式的数据,比如文本、数字、JSON 等。适用场景:列表是一个有序的字符串集合,可以实现栈(先进后出)或队列(先进先出)的功能。

2024-03-20 13:56:16 988

原创 低代码:软件开发的性价比之王

随着技术的飞速发展,软件开发领域正经历着前所未有的变革。在这场变革中,低代码平台凭借其高效、便捷的特性,逐渐崭露头角,成为众多企业和开发者的首选。本文将探讨低代码平台为何能被誉为“性价比之王”,并分析其在软件开发领域中的优势和影响。首先,我们来了解一下什么是低代码平台。低代码平台是一种允许开发者通过图形化界面和预构建的模块,以最少的手动编程来创建应用程序的工具。它极大地简化了开发过程,降低了技术门槛,使得非专业开发者也能参与到软件开发的行列中来。那么,低代码平台为何能够成为性价比之王呢?

2024-03-19 16:31:05 670

原创 自定义Key类型的字典无法序列化的N种解决方案

遇到这样的问题我们首先想到的是:既然不执行针对Point的序列化/反序列化,那么我们可以对应相应的JsonConverter自行完成序列化/反序列化工作。为此我们定义了如下这个PointConverter,将Point的表达式作为序列化输出结果,同时调用Parse方法生成反序列化的结果。我们将这个PointConverter对象添加到创建的JsonSerializerOptions配置选项中,并将后者传入序列化和反序列化方法中。;不幸的是,这样的解决方案无效,序列化时依然会抛出相同的异常。

2024-03-19 15:42:25 1003

空空如也

空空如也

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

TA关注的人

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