自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 GPT-.、Claude、Gemini、O 等) 加持下,我对“AI 协助开发”的理解越来越清晰:它不是万能的魔法棒,但用得好,确 ...

但经过大量实战(包括重构遗留系统、快速原型验证、跨语言迁移),我逐渐形成了一个清晰的理解:**AI 不是万能的,但用得好,它确实能把我的开发效率提升 3-5 倍,关键在于“提问方式”和“代码审查意识”。**这篇文章,我会用两个真实场景的代码示例,展示我是如何掌握 AI 协作的“分寸感”——哪些任务可以全权委托,哪些必须人工干预。:AI 对“代码风格统一”和“API 替换”非常拿手,但它不会主动考虑“是否需要连接池复用”、“错误日志格式是否符合团队规范”。:让 AI 生成“带类型注解”和“错误处理”的代码。

2026-08-01 11:39:45 255

原创 AI 是搭子不是替代者:我用大模型工具(cursor,trae)编程的一年经验总结

去年这个时候,我还在为一个正则表达式抓耳挠腮,为一个边界 bug 熬夜到凌晨三点。今年,我的 IDE 里住着两个“AI 搭子”——Cursor 和 Trae。他们不是来抢我饭碗的,而是来给我递工具、查资料、甚至陪我一起“头脑风暴”的。AI 不是替代者,而是我的编程搭子。今天,我就把这一年的实战经验、心路历程和踩过的坑,掰开揉碎讲给你听。—## 一、为什么说 AI 是“搭子”而不是“替代者”?很多人一听到“AI 编程”就恐慌,觉得程序员要失业了。AI 能帮你写代码,但写不出“你的业务逻辑”。

2026-08-01 11:38:28 204

原创 领域驱动设计(DDD)在分布式系统中的架构实践

强迫我们回到业务本质去思考边界。

2026-07-31 17:31:00 171

原创 终是性能瓶颈的高发地带。无论是高并发应用、数据驱动型服务,还是微服务架构中的共享数据库,数据库慢查询几乎是性能退化的前兆与根源之一。 ...

—能通过索引解决的,不要轻易引入分布式复杂度。当你真正掌握了从“发现问题”到“解决问题”的完整链路,数据库慢查询就不再是“性能怪兽”,而是你手中可控的普通参数。希望这篇文章能帮你迈出系统化优化数据库的第一步。

2026-07-31 17:29:51 205

原创 六边形架构模式深度解析

2026-07-30 17:48:38 222

原创 n 错误处理基础 | 简单一点学习 easyeasy.me Python 错误处理高级编程 | 简单一点学习 easyeasy.me ...

2026-07-30 17:47:33 150

原创 Dotnet选项模式的全球化与本地化

:| 键 | 值 ||—|—|| ConnectionString is required | 连接字符串是必填项 || Timeout must be between 1 and 100 seconds | 超时时间必须在1到100秒之间 |文件中添加键值对:| 键 | 值(默认) | 值(zh-CN) ||—|—|—|| WelcomeMessage | “Hello, welcome!## 二、基础示例:静态多语言选项首先,我们创建一个支持多语言的配置类,并通过资源文件实现静态本地化。

2026-07-29 16:28:05 188

原创 Vue 缓存之坑,变量赋值方式和响应式数据

始终通过响应式对象的属性进行赋值。

2026-07-28 18:11:28 263

原创 上位机开发之假装有设备,使用 C# 模拟串口设备

虚拟串口驱动。

2026-07-28 18:10:21 180

原创 从基础到实战:一文吃透 JS Tuples 与 Records 的所有核心用法

Tuples基础创建语法。

2026-07-26 16:32:31 246

原创 文生图模型Stable Diffusion使用详解

2026-07-26 16:31:17 216

原创 拥抱新一代 Web D 引擎,Three.js 项目快速升级 Galacean 指南

随着 Web 3D 技术的飞速发展,前端开发者对渲染引擎的需求不再局限于“能跑起来”,而是追求更高的性能、更简洁的 API 以及更好的跨平台支持。Galacean 作为新一代国产 Web 3D 引擎,凭借其基于 TypeScript 的现代化架构、内置的物理引擎和高效的渲染流水线,正在成为开发者升级项目的首选。此外,Galacean 内置了更先进的渲染管线,支持 PBR(基于物理的渲染)、阴影贴图优化以及更高效的资源管理。拥抱 Galacean,意味着拥抱更高效、更强大的 Web 3D 开发体验。

2026-07-25 16:37:00 166

原创 nn实践-使用nn搭建一个定时发送天气预报邮件的工作流

你可以把工作流想象成一张流程图:每个节点是一个任务(比如获取天气数据),节点之间有连线(比如“获取天气”后接着“发送邮件”)。今天我们要用nn——一个轻量级的Python工作流框架,搭建一个定时发送天气预报邮件的小系统。下次,我们可能用它来监控服务器状态、整理博客数据,甚至自动回复邮件——工作流的想象力,只受限于你的需求。## 总结通过这个项目,我们亲手搭建了一个实用的自动化工作流:每天定时获取天气预报并发送邮件。,nn会自动重试(默认3次)。:添加一个节点,如果发送邮件失败,用短信或Slack通知你。

2026-07-25 16:35:54 212

原创 AWS EKS部署Prometheus和Grafana

# 总结通过本文,你学会了:- 使用Helm在EKS上快速部署Prometheus和Grafana- 通过Python脚本自动化验证部署状态- 配置Grafana数据源并导入预定义仪表盘- 处理常见部署问题这套监控方案不仅适用于EKS,也适用于其他Kubernetes集群。关键点在于理解Prometheus的服务发现机制和Grafana的数据源配置。## 第一步:使用Helm部署PrometheusPrometheus可以通过多种方式部署,但使用Prometheus Operator是最佳实践。

2026-07-24 17:29:32 187

原创 奶奶都能看懂的 C++ —— const 限定符与指针

const int*

2026-07-24 17:28:20 169

原创 Java关键字解析之final:不可变的本质、设计哲学与并发安全

final。

2026-07-23 02:28:21 161

原创 用 GPT-5.2 Vibe Coding,做了一个可以“玩”的人脸相似度应用

## 第一步:用 GPT-5.2 生成核心后端代码我打开 GPT-5.2 的对话窗口,输入了这样一句话:> “请生成一个 Python 函数,使用 FaceNet 模型(通过 MTCNN 检测人脸)计算两张图片中人脸的相似度。更有趣的是,我还试了一张猫的照片和一张狗的照片——结果只有 3.2%,因为模型对人脸之外的特征几乎不响应。于是我继续对 GPT-5.2 说:> “请用 Flask 写一个简单的 Web 应用,包含一个上传两张图片的界面,点击按钮后显示相似度分数,并展示两张图片。

2026-07-23 02:27:09 214

原创 NuGet下载量数据分析与.NET生态全景观察:从数据洞察技术演进

. 引言:为什么NuGet下载量是.NET生态的晴雨表1.1 NuGet的独特地位1.1.1 从可选工具到基础设施必需组件在.NET Framework时代,NuGet(NuGet Gallery)主要扮演着第三方库的”应用商店”角色——开发者仅在需要引入外部依赖时才会手动安装包,基类库(Base Class Library, BCL)作为操作系统组件随.NET Framework一同发布,无需通过包管理器获取[1]。这一模式在2016年.NET Core正式发布后发生了根本性转变:微软将BCL拆分为

2026-07-21 15:25:22 211

原创 Oracle Deep Data Security (Deep Sec) 初体验

从场景1的结果可以看到, manderson 终端用户登录进来后,ORA_END_USER_CONTEXT.username 值是 manderson,查询员工表,能看到自己的记录,同时能看到所有下属的记录,但无法看到下属的SSN字段值。这个是重头戏,关于数据访问授权的详细规则具体如何设定全都在这部分,之前的RAS就是各种调用复杂的内部定义,如今在 Deep Sec 中只需要声明式的SQL即可实现,具体定义的内容也容易让人理解。创建一个数据授权,允许经理查看其直系下属的记录(但不包括 SSN 字段)。

2026-07-21 15:24:44 168

原创 DeepAgents 人工介入实战|LangGraph 实现 Agent 高危工具人工审批

一、为什么 Agent 需要人工介入Agent 最大的价值是可以根据用户目标自主规划并调用工具。但并不是所有工具都适合完全自动执行。比如:删除数据库表删除文件发起转账修改线上配置调用外部系统执行不可逆操作这些动作一旦执行错误,影响可能非常大。所以比较合理的模式是:普通查询类动作可以让 Agent 自动执行,高风险动作必须先进入人工审批。在本文示例中,我们定义了三个工具:query_table_data:查询表数据,低风险,可以自动执行。

2026-07-20 15:10:07 176

原创 图灵机、时间与空间复杂度:从 P/NP 到 PSPACE、EXPTIME

间?作为程序员,我们很容易想用 Python、C++ 来理解这些概念:用 Python 写出一个快速排序只需要十行,假定输入和比较是常数,一下就能推出快速排序的复杂度。但真实编程语言太复杂了:一行 Python 可能调用大量底层逻辑,不同 CPU、缓存、编译器、运行时都会影响实际执行时间。复杂度理论不想被这些细节绑架。它需要一个极简、稳定、可以写成数学定义的计算模型。这就是图灵机的作用。图灵机不是真实的计算机,也不是一种真实编程语言。它更像复杂度理论里的“极简虚拟机”:足够简单,方便证明;

2026-07-20 15:09:34 227

原创 SpringBoot 即时聊天 IM 完整实现(HTTP会话管理 + WebSocket实时推送 + 离线消息)

ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = ‘聊天消息表’ ROW_FORMAT = Dynamic;varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT ‘会话最后一条消息内容(列表预览)’,消息入库、会话更新放入事务;

2026-07-19 16:06:49 234

原创 访 DeepChat 作者们:聊聊本地优先、MCP 与 Agent Memory

维护这样一个 DB 会有一个好处,当上游更新不及时的时候,我们可以主动往这个 DB 里加新的模型,调整有问题的参数等,非常方便。同时,我们会把基础参数及能力等都放在这份 DB 中,后续 DeepChat 只需要写一个简易的解析层,就能完成所有的适配工作,而不需要写很多客制化的代码。为此,我还发了一个小视频「DeepChat MCP 超级功能」,展示如何把 DeepChat 开着,让它去帮我整理文件夹:DeepChat 会按照文件类型、后缀名、尺寸大小,帮你整理好文件,在当时看来非常酷炫。

2026-07-19 16:06:09 189

原创 Go-Spring 项目概览

因此,Go-Spring 并不是对 Java Spring 的简单复刻,而是一次基于理念的重构:在继承思想的同时,坚持 Go 的简洁与清晰。不同环境(dev/prod)需要不同的实现,那就用不同的条件分别注册,根据配置开关决定启用哪个实现,完全符合最简单的逻辑习惯。通过提供系统化的解决方案,帮助开发者从繁杂的基础设施中解放出来,将更多精力聚焦于业务本身,实现高效、优雅的应用开发。(如配置管理、依赖注入、Starter 模式),并以 Go 原生方式重新实现,避免引入不符合 Go 风格的复杂机制。

2026-07-18 15:46:36 193

原创 Triton学习 · Part 1 · Hello, world!

系统:ManjaroCUDA 最高支持版本:13.1这里没有使用NVIDIA Triton Docker容器,而是直接使用了12来看一下 Triton 版的 Helloworld:1234567891011121314151617181920212223c = a + bif== “”:N = 16。

2026-07-18 15:45:57 171

原创 内存化在对账系统中的应用实践

内存化对账没什么神秘的,是一个务实的工程选择。数据乱序、周期错位、系统崩溃,这些都会发生。内存化的方式是通过顺序执行和可重放的输入,把复杂性限制在它该在的地方处理,而不是扩散到整个系统。如果你的对账系统吞吐量撑不住、成本压不下来、逻辑越来越乱,内存化不一定是激进方案,可能只是换了个更直接的路。

2026-07-17 15:01:31 186

原创 数据库隔离级别

PostgreSQL 的 Repeatable Read 实际上是 Snapshot Isolation,可能发生写倾斜(Write Skew)异常,需要 Serializable 才能完全避免。MySQL InnoDB 在 Repeatable Read 级别通过 Next-Key Lock 已实际解决了幻读问题,所以标注为 ✓*。同一事务内,多次执行相同查询返回不同的行数(因为其他事务插入或删除了符合条件的数据)。同一事务内,多次读取同一数据得到不同结果(因为其他事务在此期间修改并提交了该数据)。

2026-07-17 15:00:35 354

空空如也

空空如也

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

TA关注的人

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