一文理解 C#.NET Tuples:从基础到高级应用

C# 元组的核心价值,在于用更少的样板代码组织少量异构数据。本文从 `Tuple` 与 `ValueTuple` 的差异讲起,梳理声明、解构、返回多个值、模式匹配、LINQ 与异步场景,并补出在 JSON、记录类型和长期维护中的边界,帮助你判断它该用在哪里、又该在哪些地方收手。

一文理解 C#.NET Tuples:从基础到高级应用

JavaScript 中 Fetch 怎么在单元测试中优雅地 Mock 全局 fetch 函数

在 Jest 里 Mock 全局 `fetch`,关键不是“能不能替换”,而是怎样让返回值、调用链和清理方式都贴近真实环境。文章按常见测试写法拆解 `global.fetch` 的 Mock、可复用 helper、`Response.json()` 链式返回,以及 JSDOM、Node、MSW 的适用边界。 在 JavaScript 单元测试里,Mock `fetch` 看起来只是替换一个全局函数,真正容易出问题的却是返回结构、环境差异和测试收尾。

JavaScript 中 Fetch 怎么在单元测试中优雅地 Mock 全局 fetch 函数

SQL 如何对 JSON 字段进行分组聚合

JSON 字段里的数组或对象,不能直接拿来做 `GROUP BY`。这篇文章把 MySQL 8.0+ 的 `JSON_TABLE()` 和 PostgreSQL 的 `jsonb_array_elements()` 拆开说明,并补上类型转换、空值过滤、分组维度选择这些最容易把统计结果做错的关键点。 JSON 字段里有数组或对象时,不能直接 GROUP BY 。正确做法是先展开成行,再按主键或提取字段分组。

SQL 如何对 JSON 字段进行分组聚合

Trae 全局默认 JDK 怎么改:从 setting.json 到路径定位一次说清

想在 Trae 里切换全局默认 JDK,关键不在环境变量,而在 `setting.json` 里的两个 Java 路径配置。本文把入口位置、需要同时修改的字段,以及快速查找本机 JDK 路径的方法整理成一套可直接照做的步骤。 Trae 里切换默认 JDK,看起来只是改个路径,但实际常出问题的地方在于配置项不止一个:JDK 装好了、环境变量也没错,编译或语言服务还。

Trae 全局默认 JDK 怎么改:从 setting.json 到路径定位一次说清

Ubuntu 上 Node.js 项目如何管理依赖:npm 与 Yarn 使用梳理

在 Ubuntu 上管理 Node.js 项目依赖,核心还是 npm 和 Yarn 两条路线。本文按初始化、安装、更新、删除和部署几个环节梳理常用命令,并说明 `package.json`、`devDependencies`、`yarn.lock` 各自负责什么,方便你快速判断项目该怎么管依赖。 在 Ubuntu 上做 Node.js 项目,依赖管理看起来只是装包和删包,实际会直接影响团队协作、环境一致性和部署稳定性。

Ubuntu 上 Node.js 项目如何管理依赖:npm 与 Yarn 使用梳理

怎样用 SQL JSON 函数查询数组中的指定元素

查询 SQL JSON 数组时,最常见的问题不是函数失效,而是字段类型、路径表达式和元素类型没对上。本文用 MySQL 与 PostgreSQL 两套写法,梳理 JSON_CONTAINS、JSON_EXTRACT、JSON_TABLE 与 jsonb 操作符的适用场景、坑点和性能差异。 很多人第一次查 SQL 里的 JSON 数组,都会遇到同一个现象:语句看起来没错,结果却始终查不到。

怎样用 SQL JSON 函数查询数组中的指定元素

SpringMVC 多种响应返回方式详解:页面跳转、JSON 返回与常见踩坑一次讲清

这篇文章把 SpringMVC 常见返回方式按“页面渲染”和“JSON 接口”两条主线重新梳理,重点解释 String、void、ModelAndView、Model + String、@ResponseBody 与 @RestController 的差异,并把最容易触发 404 或注解冲突的场景单独拎出来,方便快速判断该用哪一种。 SpringMVC 的返回值不只是“写法不同”,而是决定了请求最终走页面渲染还是直接输出数据。

SpringMVC 多种响应返回方式详解:页面跳转、JSON 返回与常见踩坑一次讲清