自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 8 天 20 万 Star 的 REA 到底是什么?我把这个「AI 逆向一切」神器的架构和用法拆明白了

REA 这波爆火,本质上是踩中了一个非常明确的趋势——AI Agent 已经从"帮你写代码"走到"帮你理解一个已存在的软件"这一步了。以前你想抄竞品一个功能,得自己提 issue、自己读反编译、自己猜接口;现在你可以把这件事整个交给 Agent,让它去翻二进制、追 IPC、看抓包,再回来给你一份带证据的实现方案。对独立开发者、对做互操作性研究、对游戏 Mod 和软件 preservation 的同学,这是实打实的生产力提升。仓库地址放这:rea.toolsrea-agents。

2026-10-16 10:48:06 452

原创 什么是代码知识图谱?AI工具提效读码工具-CodeGraph

在项目迭代、接手新项目、重构老旧代码的场景中,绝大多数开发者都会遇到这些痛点:项目代码量庞大,模块依赖混乱,梳理架构耗时极长普通AI编程工具仅能读取单文件内容,无法理解全局代码关联关系询问代码逻辑、接口调用链路时,AI经常给出错误、脱离项目的答案代码重构时,无法快速定位关联调用处,容易出现改崩业务的问题而CodeGraph就是为解决这些问题诞生的代码智能分析工具。它通过构建本地代码知识图谱。

2026-09-10 16:56:26 65

原创 还不知道Harness是什么?Agent Harness 入门详解

很多大模型智能体效果差、不稳定、容易翻车,问题往往不在模型本身,而在Harness运行时层。Harness是包裹LLM的整套落地运行基础设施,区别于普通Agent框架与Prompt调试。本文通俗易懂讲透Harness的核心定义、五大核心模块、工程价值、与传统框架的差异,搭配极简伪代码、实战场景与常见踩坑,帮开发者建立标准的Agent工程思维。文中了结合DeepSeek-Harness、Claude Code等主流落地案例辅助理解。Agent = 大模型(Model) + 运行脚手架(Harness)。

2026-09-04 18:22:05 380

原创 通用 Skill 开发规范指南|从零搭建高质量可复用 AI 技能

Skill 是 AI 提效的终极形态,区别于零散的一次性 Prompt,标准化的 Skill 可以实现能力沉淀、团队复用、持续迭代。掌握这套通用构建规范,任何人都能打造出专属、低幻觉、高效率、适配全场景的 AI 辅助技能。

2026-09-02 17:12:50 481

原创 游戏服务端开发:Actor模型详解(Go语言)

在游戏服务器开发中,并发安全是永恒的痛点。传统的多线程/多协程+锁(Mutex)开发模式,在复杂游戏逻辑中极易出现死锁、竞态条件、数据脏读写问题。尤其是玩家角色、怪物、副本、公会等实体逻辑,交互频繁、状态多变,锁机制会大幅增加代码复杂度,还会严重拖累服务器吞吐性能。而Actor模型是游戏服务器的最优解之一,也是当前游戏后端主流架构模型。Go语言天生适配Actor模型:原生Goroutine轻量级协程、Channel消息通信机制,完美契合Actor“单实体串行处理、消息驱动、无共享锁”的核心思想。

2026-07-19 18:22:18 535

原创 2026最新 OpenClaw Windows 完整安装配置教程

OpenClaw 作为轻量化AI编程助手,能够大幅提升开发效率,本文全程适配国内网络环境,通过npm镜像加速+免费中转API站点,彻底解决官方版下载慢、无法联网、付费门槛高的痛点。新手只需严格按照「环境安装→镜像部署→中转API授权→启动验证」四步操作,即可零基础快速上手,适配所有Windows开发设备,日常代码生成、调试、重构、文档编写均可一键完成。

2026-07-08 21:20:47 455

原创 AI Skill落地实操|告别乱创建、无效调用、Token浪费

很多个人开发者在对接企业项目时,会习惯性根据单个功能、单个模块拆分Skill,最终累计创建10+甚至更多技能。维护成本爆炸:项目doc规范更新后,需要逐个修改数十个Skill规则,极易出现规范不一致、部分技能滞后失效的问题。Token无效损耗:细碎Skill存在大量重复通用规则,单次调用上下文冗余,云端Codex/GPT模型调用成本大幅上涨。调用容错率极低:无自动匹配机制,技能数量过多易混淆,调用错误会直接导致输出代码不符合企业规范,返工耗时。企业级Skill的核心逻辑。

2026-07-05 17:26:16 462

原创 如何高效使用AI工具辅助编程——拒绝乱改架构、冗余代码

AI编程工具已经成为开发者的必备工具,无论是代码编写、Bug修复、逻辑注释,还是单元测试生成,AI都能极大提升开发效率。但在使用过程中,会出现一些越用越坑的问题:AI私自修改原有项目架构,破坏代码整体设计生成大量冗余、无用代码(给你堆屎山代码),增加维护成本无感知过度重构,导致隐藏Bug、业务崩盘新增功能牵一发而动全身,原有正常功能失效归根结底,大部分程序猿只会“让AI写代码”,不会“管控AI写代码”。AI的特性是指令模糊就自由发挥,没有约束就随意优化。AI:你刚刚没有提到这条对吧?

2026-06-06 16:05:54 685

原创 C++与 Lua的交互

游戏服务端、客户端热更新、业务逻辑解耦、C++高性能底层+Lua灵活业务架构:C++负责高性能底层(网络、内存池、epoll、计算),Lua负责业务逻辑、配置解析、热更新,二者结合是游戏行业主流生产方案。

2026-05-29 16:04:29 453 1

原创 atomic原子操作实现无锁队列

原子操作是指,即一个操作的执行过程中,不会被其他线程打断,要么全部执行完毕,要么根本不执行。举个简单例子:多线程环境下,对一个变量i执行i++操作,看似是一个单一操作,实则包含三个步骤:读取i的值、将i的值加1、将结果写回i。如果没有原子性保证,多个线程同时执行时,会出现线程安全问题(比如两个线程同时读取i=1,都加1后写回,最终i=2,而非预期的3。

2026-04-11 18:50:52 454

原创 QML 实现登录界面

自动登录” 依赖 “记住密码”,因此勾选 “自动登录” 时强制勾选 “记住密码”,避免逻辑矛盾;登录校验不仅要检查 “用户名 / 密码非空”,还需覆盖 “首次运行、账号锁定、云模式适配” 等场景,避免用户无效操作。),还通过 “输入框边框变红 + 错误动画” 强化视觉反馈,3 秒后自动清除错误状态,避免长期显示影响体验。支持 “回车键触发登录”,符合用户操作习惯,无需手动点击按钮,提升操作效率。函数包裹文本,监听语言切换信号,实时更新界面文本,无需重启应用。函数统一控制所有控件状态,避免并发登录请求。

2025-11-05 10:00:44 1004

原创 QML 中使用 Canvas 实现矩形框边界渐隐效果

在 QML 界面开发中,为矩形框添加边界渐隐效果能显著提升 UI 质感。通过 Canvas 组件实现这一效果,核心思路是利用 2D 绘图上下文绘制线性渐变,并通过调整颜色顺序快速实现 “凹凸” 两种视觉风格的切换。

2025-10-23 14:59:39 444

原创 QML 动态元素-动画(Animations)

在动态组件文件中定义动画,通过属性控制动画的启动与停止。例如创建width: 120radius: 8property bool startAnim: false // 控制动画启动的开关// 预定义动画:位移+旋转if (!running) animatedItem.startAnim = false // 动画结束后重置开关to: 360Window {width: 600Item {Button {x: 50,y: 150})// 延迟100ms启动动画,确保元素已完成创建。

2025-10-09 10:32:14 1024

原创 muduo网络库事件驱动模型的实现与架构

muduo 网络库的事件驱动模型通过ChannelPollerEventLoop等组件的优雅协作,实现了高效的事件管理和分发。分层解耦:各组件职责单一,通过接口交互,便于扩展和维护(如替换不同的Poller实现)。线程安全:"one loop per thread" 模型确保事件处理的线程安全性,异步任务队列解决了跨线程任务提交问题。高效轻量:基于 epoll 边缘触发(默认)和 timerfd 等内核特性,减少不必要的事件通知和系统调用。

2025-09-28 11:12:47 842

原创 怎么理解程序中的低内聚高耦合?(举例版)

使用前向声明减少编译依赖:在头文件中用class User;前向声明,而非,降低编译耦合。智能指针管理对象生命周期:用替代原始指针,避免手动管理依赖对象的生命周期。模板实现静态多态:对于性能敏感场景,可用 CRTP(奇异递归模板模式)实现静态多态,在编译期绑定接口与实现,兼顾低耦合与高性能。Pimpl 惯用法(指针到实现):将类的私有成员放入独立的实现类,头文件只暴露接口,避免私有成员变更导致的大量重编译。// Pimpl惯用法示例(降低头文件耦合)private:// 前向声明// 指向实现。

2025-09-23 17:21:33 766

原创 怎么理解程序中的低内聚高耦合?

在解释 “低内聚高耦合” 前,必须先明确两个核心概念的定义 —— 内聚描述 “模块内部的关联性”,耦合描述 “模块之间的关联性”,二者共同决定代码的可维护性。理解低内聚高耦合,本质是理解 “代码的边界感”—— 让每个模块只做自己该做的事,模块之间只通过明确的接口交互。内聚看 “内部”:模块内的功能是否 “目标一致”,避免 “万能模块”;耦合看 “外部”:模块间的依赖是否 “依赖抽象”,避免 “直接绑定具体实现”;优化靠 “拆分与隔离”:用单一职责拆分低内聚模块,用接口 / 中间层隔离高耦合依赖。

2025-09-23 17:05:57 1411

原创 QML常用基本组件(一)

Item 是所有可视化组件的基类,本身不可见,但承担着 "容器" 与 "定位锚点载体" 的核心角色。它不具备绘制能力,主要用于管理子组件的布局、交互区域和坐标系统,所有 QML 可视组件(如 Rectangle、Text)均继承自 Item,因此掌握其属性是理解 QML 布局逻辑的基础。

2025-09-23 10:48:31 973 1

原创 VS2022 + QML 开发环境配置

【代码】VS2022 + QML 开发环境配置。

2025-09-17 11:36:50 1543

原创 QML 快速入门:从语法到实战

主打 UI 快速开发,通过简洁的语法描述界面结构与交互逻辑,广泛用于桌面端、移动端、嵌入式设备的图形界面开发。QML(Qt Meta-Object Language)是 Qt 框架推出的。

2025-09-17 11:33:51 1345

原创 SVN 安装及常用命令

以上命令覆盖了 SVN 日常使用的 90% 场景,掌握这些足以应对大部分版本控制需求。:在~/.bashrc 或~/.bash_profile 中添加。发生冲突时,文件会被标记为冲突状态。

2025-09-16 11:40:52 614

原创 Visual常用快捷键

你可以根据个人习惯修改或指定快捷键。通过菜单栏的。

2025-09-09 10:00:34 317

原创 项目必备流程图,类图,E-R图实例速通

E-R 图用于数据库设计,描述实体、属性及实体间关系。我们以电商订单系统为例,结合数据库表结构来绘制 E-R 图。类图用于描述类的结构和类之间的关系,我们以一个简单的图书管理系统为例,根据 C++ 类代码来绘制类图。流程图用于描述算法或业务的执行步骤和分支逻辑,我们以 ATM 取款流程为例,结合代码逻辑来画流程图。

2025-09-05 17:12:59 524

原创 Git常用操作(2)

【代码】Git常用操作(2)

2025-09-05 16:03:17 351

原创 DNS 协议:从原理到应用全解析

DNS(Domain Name System,域名系统)是应用层协议,核心作用是将人类可读的 “域名”(如)映射为机器可识别的 “IP 地址”(如 180.101.50.242),解决 “记 IP 难、记域名易” 的问题,是互联网访问的 “地址簿”。

2025-09-05 15:26:14 1267

原创 常用的几种测试工具:selenium,jmeter,jenkins

在软件测试与研发流程中,Selenium、JMeter、Jenkins 是三类核心工具,分别聚焦,三者常配合使用构建完整的质量保障与交付链路。

2025-09-04 20:40:47 1634

原创 算法-二叉树的序列化与反序列化

序列化:把内存中的二叉树,转成字符串(或数组)的形式,方便存储(如存文件)或网络传输。反序列化:把序列化得到的字符串,还原回原来的二叉树结构,恢复成可操作的内存数据。举个直观例子:一棵简单二叉树1/ \2 3序列化后可能变成字符串1!2!##3!##,反序列化则是把1!2!##3!##再变回上面的树。

2025-09-04 17:22:33 818

原创 算法-根据前序+中序遍历打印树的右视图

+i) // 从深度0到2,依次取mp的值return res;用两个栈同步存节点和深度,通过 “先压左、再压右” 保证每次先处理层的右节点,用哈希表记录每一层第一个遇到的右节点(就是最右节点),最后按深度顺序收集结果,就是右视图。

2025-09-04 16:35:59 901

原创 Linux 环境配置 Boost 库详细步骤

Boost 是一个功能强大的 C++ 库集合,包含大量实用工具和组件,其中网络相关组件(如 Asio、Beast 等)被广泛用于高性能网络编程。版本选择建议稳定版本:1.76.0(兼容性好,支持 C++11 及以上标准)最新版本:可从官网获取,但需注意与编译器版本匹配⚠️ 避坑提示:不建议使用系统默认源安装的 boost(版本通常较旧),推荐手动编译最新稳定版。

2025-09-02 20:11:17 1259

原创 Linux 环境配置 muduo 网络库详细步骤

安装完成后,需配置环境变量,让 g++/CMake 能自动找到 muduo 的头文件和库文件,避免每次编译都手动指定路径。⚠️ 避坑点:不建议使用 Ubuntu 22.04 及以上版本,部分依赖库版本兼容问题会导致编译失败。通过以上步骤,即可在 Linux 环境下完整配置 muduo 网络库,且能通过测试程序验证可用性。,本文以 Ubuntu 20.04 为例(CentOS 步骤仅包管理命令有差异,会特别标注)。muduo 采用 CMake 构建,需先创建编译目录(避免污染源码),再指定安装路径。

2025-09-02 20:03:08 833

原创 常用设计模式(C++)

设计模式是反复出现的软件设计问题的通用解决方案,由前人总结的一套经过验证的代码设计经验。它不是具体代码,而是抽象的设计思想,旨在提高代码的可复用性、可维护性和扩展性。保证一个类仅有一个实例,并提供全局唯一访问点。定义一个创建对象的接口,让子类决定实例化哪个类,将对象创建延迟到子类。将复杂对象的构建过程与表示分离,使得同样的构建过程可创建不同的表示。将一个类的接口转换成客户端期望的另一个接口,使原本不兼容的类可以协同工作。动态地给对象添加额外职责,不改变其原有结构和接口。

2025-08-22 15:16:07 749

原创 函数包装器

的模板参数为函数签名std::function<返回类型(参数类型1, 参数类型2, ...)> 包装器名称;功能:将任意可调用实体 “包装” 为统一类型的对象,实现类型擦除(Type Erasure)。适用场景:需要统一接口的回调函数、策略模式、延迟执行等。

2025-08-17 20:52:42 934

原创 C++11 Lamda表达式介绍与用法

/ 降序排序});// 结果:4,3,2,1。

2025-08-17 11:22:14 807

原创 GDB调试基础命令详解

info macros # 显示所有宏定义list 10,20 # 显示第10-20行源码(简写 l 10,20)list add_num # 显示add_num函数附近的源码。

2025-08-17 07:30:00 741

原创 二叉树的三种遍历方法

通过掌握二叉树的三种核心遍历方式,可奠定树结构算法的基础,后续复杂树问题(如路径求和、子树判断)均需基于遍历逻辑扩展。核心思路:根节点先入栈,出栈时访问,再依次入栈右子树、左子树(利用栈的 LIFO 特性)。(注:n 为节点数,h 为树的高度,平衡树 h=logn,极端链状树 h=n)迭代方式通过显式栈模拟递归过程,避免递归栈溢出风险,更适合工程实践。核心思路:前序遍历变种(根→右→左),最后反转结果得到左→右→根。核心思路:左子树一路入栈,触底后出栈访问,再转向右子树重复。:代码简洁,逻辑清晰;

2025-08-16 23:00:00 617

原创 Git代码库安装与管理常用操作

(仅修改最近一次未推送的 commit)(rebase 方式合并,保持历史整洁)(安全,不修改历史)

2025-08-16 21:45:00 955

原创 Boost库核心组件与应用

在 C++ 编程领域,除了标准库(STL)外,BOOST 库是最具影响力的第三方库之一。它由全球数百位开发者共同维护,包含超过 160 个高质量的组件,覆盖从基础数据结构到网络编程、从多线程到跨平台工具的几乎所有开发场景。填补 STL 空白:提供 STL 未覆盖的高频需求功能(如智能指针扩展、正则表达式、文件系统操作等);推动 C++ 标准演进:BOOST 中的多个组件(如shared_ptrregex)被直接纳入 C++11 及后续标准,成为标准库的一部分;跨平台兼容性。

2025-08-16 21:15:00 1157

原创 C++STL标准模板库详解

STL 容器为 C++ 开发者提供了开箱即用的数据结构解决方案,掌握各类容器的特性和适用场景是编写高效代码的基础。实际开发中需根据访问方式、操作频率、排序需求需随机访问选vectordeque;需有序且高效查找选setmap;需极致查找性能且无序选;需特定数据结构行为选适配器(stackqueue等)。

2025-08-16 16:56:21 1115

原创 I/O多路复用特性与实现

IO 多路复用(I/O Multiplexing)是指通过一个系统调用同时监控多个 IO 文件描述符(File Descriptor,FD),当某个或某些 FD 就绪(可读 / 可写 / 异常)时,通知应用程序进行处理。避免大量线程 / 进程的创建与切换开销;单线程即可高效处理成百上千的并发连接;广泛应用于服务器开发(如 Nginx、Redis 等中间件)。

2025-08-15 21:26:53 1011

原创 红黑树的特性与实现

红黑树的节点需要存储 5 类信息:键值、颜色、左子节点、右子节点和父节点。为简化边界条件处理(如空节点的颜色判断),通常将所有空节点统一指向一个哨兵节点(NIL 节点),该节点永久为黑色,且左右子节点和父节点均指向自身。// 节点结构定义int key;// 键值// 节点颜色Node *left;// 左子节点// 右子节点// 父节点// 构造函数:新节点默认红色(插入时优化)// 哨兵节点定义(全局唯一)

2025-08-13 22:18:48 909

原创 QT常用类解析

Qt SQL 模块提供数据库访问功能,支持 MySQL、SQLite、PostgreSQL 等主流数据库。Qt 提供了一系列替代 C++ 标准库的数据类型,更适合跨平台开发和 Qt 生态。信号与槽是 Qt 最核心的通信机制,依赖元对象系统实现,用于部件间或对象间的交互。Qt 提供跨平台的文件操作类,屏蔽了不同系统的文件路径、编码等差异。)提供跨平台的网络通信功能,支持 TCP、UDP、HTTP 等协议。Qt 提供安全的多线程机制,避免直接操作原生 C++ 线程的复杂性。)更轻量,且支持 Qt 元对象系统。

2025-08-13 08:58:31 977

空空如也

空空如也

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

TA关注的人

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