STL:迭代器与常用算法
迭代器 C++ STL(Standard Template Library,标准模板库)中迭代器与常用算法是泛型编程的核心组成部分。它们配合使用,可以对容器进行高效、统一的操作。下面是对它们的系统性总结。 一、什么是迭代器(Iterator) 迭代器是 STL 的核心,用于访问容器中的元素。迭代器本 ...
Spring AOP 面向切面编程深度解析
在 Spring 生态系统中,**面向切面编程(AOP)** 是实现横切关注点分离的核心机制,通过将日志、事务、权限等通用功能从业务逻辑中解耦,提升代码可维护性与复用性。 ...
上周热点回顾(6.16-6.22)
热点随笔: · 编码之道,道心破碎。 (why技术)· 知名开源项目Alist被收购!惹程序员众怒,开团炮轰甲方 (程序员鱼皮)· 一周 Star 破万的开源项目「GitHub 热点速览」 (削微寒)· 历时半年,我将一个大型asp.net的零代码快速开发平台转成了java (chegan)· 推荐 ...
京东正式开源Taro on HarmonyOS C-API 版本,为鸿蒙应用跨端开发提供高性能框架
近日,京东正式开源了Taro on HarmonyOS C-API 版本,为鸿蒙应用跨端开发提供高性能框架。这次版本的发布,带来了更丰富的样式适配、更高效的渲染性能、更全面的组件支持,让开发者以Web范式的方式来开发出媲美鸿蒙性能的应用,为鸿蒙应用生态的丰富注入强大的动力。 ...
Solon Expression Language (SnEL):轻量高效的Java表达式引擎
Solon Expression Language(简称SnEL)是 Solon 生态体系中的轻量级表达式引擎,专为Java开发者设计。它采用独特的"求值表达式"模型,通过简洁的语法实现复杂逻辑处理,同时保持极高的执行效率和安全性。 ...
超实用!SpringAI提示词的4种神级用法
提示词(Prompt)是输入给大模型(LLM)的文本指令,用于明确地告诉大模型你想要解决的问题或完成的任务,也是大语言模型理解用户需求并生成准确答案的基础。因此 prompt 使用的好坏,直接决定了大模型生成结果的质量(是否符合预期)。 那问题来了,在 Spring AI/Spring AI Ali ...
详解HarmonyOS NEXT仓颉开发语言中的全局弹窗
之前分享过仓颉开发语言中的自定义弹窗,那一次的自定义弹窗需要在对应页面先初始化再进行弹出,不是很方便。今天分享一下不依赖页面的全局弹窗。 仓颉提供了全局弹窗模块prompt_action,使用之前先将它导入: import ohos.prompt_action.* 该模块提供了三种预设好的弹窗形式, ...
veRL代码阅读-2.Ray
看VeRL代码之前发现代码里主要使用了ray框架来进行调度和通信. 所以先对ray进行初步学习, 后续有空闲时间再细看下Ray的代码. 框架原理 构成 架构图如下, ray里主要分为系统层面的layer和应用层的layer. 系统层layer: GCS(Global Control Store): ...
浅谈开源在线客服系统与 APP 集成的技术方案与优劣势
在为移动端 App 接入在线客服系统的过程中,我经历了长时间的技术选型探索。最初,我也曾被一些“技术理想主义”选项所吸引,比如让用户自己研发界面我提供 API 以获得最高自由度,或集成 SDK 以追求原生体验。然而,随着项目逐步推进,我意识到单纯从技术出发的方案并不能完全满足真实业务场景下的复杂需求... ...
Graph ⋈ Agent:Chat2Graph 如何重构 GraphRAG 范式?
Chat2Graph通过「图智互融」重构了GraphRAG范式,构建了首个「图原生智能体」,降低用图门槛,加速内容生成,实现与图对话。 ...
基于 Spread,在 Blazor 框架中导入 / 导出 Excel
引言 在现代 Web 应用开发中,处理 Excel 文件的导入和导出是一项常见且重要的需求。Blazor 框架是微软推出的用于构建具有 .NET 强大功能的交互式客户端 Web UI 的相对较新的框架。而 Spread.net(是一个非常强大且可扩展的 JavaScript 电子表格组件,它能使在 ...
.NET入行第4年(第二集)
.net入行第4年 - 园友2288976 - 博客园 .NET入行第4年 | 第二集的开始:账号封禁后的思考与转型 园友2288976 - 博客园 很多朋友希望我写得更详细一点,特别是“怎么干”这一块。说实话,我语言组织能力并不算强,写得不够系统,大家就当是听朋友聊天,凑合看看吧。 一、从喜悦到崩 ...
6. Java JUC源码分析系列笔记-CAS
目录1. 是什么1.1. 乐观锁与悲观锁1.2. CAS2. 如何使用2.1. Atomic是什么2.2. Atomic使用2.3. Atomic原理分析2.3.1. 构造方法2.3.2. addAndGet方法2.3.3. getAndIncrement2.3.4. decrementAndGet ...
DotTrace系列:3. 时间度量之墙钟时间和线程时间
一:背景 1. 讲故事 在用 dotTrace 对程序进行性能评测的时候,有一个非常重要的概念需要使用者明白,那就是 时间度量 (Time measurement),主要分为两种。 墙钟时间 线程时间 在 dotTrace 中有四种测量维度,其中 Real time 对应着 墙钟时间,截图如下: 二 ...
Web前端入门第 68 问:JavaScript 事件循环机制中的微任务与宏任务
JS 是单线程语言。这句话对不对? 按照目前的情况来看,JS 自从支持了 Web Worker 之后,就不再是单线程语言了,但 Worker 的工作线程与主线程有区别,在 Worker 的工作线程中无法直接操作 DOM、window 对象或大多数浏览器 API(如 localStorage),Wor ...
Java集合--从本质出发理解HashMap
文章内容较长,放宽心,带着疑问慢慢读,总能找到你想要的答案。 如何快速定位数据存储在内存地址的位置? 先提出一个问题:如何快速定位数据存储在内存地址的位置? 聪明的你会想到使用数组:根据首地址+单个节点存储大小 x 数组下标,便可快速计算出目标的内存地址,从而做到时间复杂度为O(1)的查找速度。但这 ...
.NET 8 gRPC 实现高效100G大文件断点续传工具
前言 随着数字化和信息化的发展,大文件传输在企业、科研以及个人用户中变得越来越常见。传统的文件传输方式在面对大文件(如几十GB甚至上百GB的视频、工程数据)时,常常因网络不稳定、程序崩溃等原因导致传输失败,而重新上传又浪费大量时间和带宽资源。 为了解决这一问题,本文推荐一个基于WinForm 和 . ...
pytorch入门 - 基于AlexNet神经网络实现猫狗大战
基于之前的博客 pytorch入门 - AlexNet神经网络,并借助Kaggle 的 Dogs vs Cats Redux 数据集,实现一个基于 AlexNet 的二分类模型识别猫与狗。 完整流程涵盖数据准备、归一化、模型定义、训练增强、验证并可视化结果。 一、数据集准备与预处理 import o ...
LinqPad:C#代码测试学习一品神器
LinqPad 是一个可编写、运行C#(VB/F#/SQL)代码的轻量工具,C#开发者强烈推荐必备的工具,一个一旦用了就再也不想丢弃的工具。工具出自《C# 核心技术指南》的作者Joseph Albahari,一位.Net资深技术专家。 ...