1
This commit is contained in:
86
3Resources/AI/基于Harness-SDD-多仓管理的AI全栈开发实践.md
Normal file
86
3Resources/AI/基于Harness-SDD-多仓管理的AI全栈开发实践.md
Normal file
@@ -0,0 +1,86 @@
|
||||
---
|
||||
title: 基于 Harness + SDD + 多仓管理模式的 AI 全栈开发实践
|
||||
source: https://mp.weixin.qq.com/s/ygQGSH5c7GHYDvkqWoQTXQ
|
||||
author: 盖伦 / 得物技术
|
||||
date: 2026-05-06
|
||||
tags:
|
||||
- AI开发
|
||||
- 全栈
|
||||
- SDD
|
||||
- Harness
|
||||
- Cursor
|
||||
- ClaudeCode
|
||||
---
|
||||
|
||||
# 基于 Harness + SDD + 多仓管理模式的 AI 全栈开发实践|得物技术
|
||||
|
||||
## 一、核心理念:Harness 思维 — 让 AI 模仿,而不是凭空创造
|
||||
|
||||
### 全栈AI开发最容易踩的坑
|
||||
让AI从零开始写代码产生"外星代码":风格不一致、复用率低、采纳率低。AI生成了代码,但Review成本和返工成本反而更高了。
|
||||
|
||||
### Harness 思维的核心:给 AI 一个"模仿对象"
|
||||
给AI一个已有的实现作为参照,让它照着复刻一份,而不是凭空创造。
|
||||
|
||||
**四条原则:**
|
||||
|
||||
| 原则 | 说明 | 举例 |
|
||||
|------|------|------|
|
||||
| 找相似实现 | 在代码库中找到功能最相似的已有实现作为参照 | "结束语"参照"场景化欢迎语" |
|
||||
| 复用优先 | 能复用的组件、接口封装、数据结构直接复用 | 复用greetingExtendInfo数据结构 |
|
||||
| 模仿着复制 | "抄一份改一改"比用新方式好 | Controller/Service/Repository按已有模仿 |
|
||||
| 约束生成范围 | 提示词中明确指定参考文件/参考接口 | 前端修改入口@FeatureTable/index.tsx:53-58 |
|
||||
|
||||
### 提示词体现 Harness
|
||||
- ❌ 不推荐:`请实现一个结束语管理的 CRUD 接口`
|
||||
- ✅ 推荐:明确指定参考文件、数据结构和接口路径,如"参照场景欢迎语功能(后端/api/v1/feature/list,前端FeatureTable/index.tsx:53-58)实现"
|
||||
|
||||
## 二、全栈工作区搭建与 Codebase Indexing
|
||||
|
||||
将前后端代码放在同一个工作区下的三个核心价值:
|
||||
1. **Codebase Indexing**:Cursor对工作区内所有代码进行向量化嵌入建立语义索引,AI能跨仓库理解代码关系
|
||||
2. **上下文完整**:AI同时能看到前后端代码,接口字段、命名风格自然对齐
|
||||
3. **SDD文档集中管理**:前后端SDD文档在同一工作区,便于接口契约对齐
|
||||
|
||||
### Cursor vs Claude Code 实测对比
|
||||
|
||||
| 功能维度 | Cursor | Claude Code |
|
||||
|---------|--------|-------------|
|
||||
| 代码库语义索引 | 支持grep+语义检索,速度快 | 仅支持grep,依赖模型能力 |
|
||||
| 代码生成速度 | 极速,平均1-3分钟 | 中速,平均3-30分钟 |
|
||||
| 代码采纳率 | 两者相当 | 两者相当 |
|
||||
| 文件/代码段引用 | 快捷键、拖拽即可引用 | 需手动@文件路径,无法引用代码段 |
|
||||
| 多Agent | 默认开启(多Tab并行) | 需手动注册子Agent |
|
||||
| 费率模型 | 失败任务不收费 | 失败任务耗时长,容易浪费Token |
|
||||
| 历史会话恢复 | 仅能查看当前项目会话记录 | 可查看全局会话记录 |
|
||||
| 综合评价 | 快速迭代首选,推荐Composer2模式 | 长链路复杂任务可用 |
|
||||
|
||||
## 三、SDD 驱动的全栈代码生成流程
|
||||
|
||||
- 全栈SDD需同时覆盖前后端
|
||||
- 提示词编写范式:明确需求、参考实现、数据结构、接口契约
|
||||
- 前后端需求点清单分工示例
|
||||
- SDD文档产出与指令使用说明
|
||||
|
||||
## 四、多 Agent 协作:前后端并行开发
|
||||
|
||||
- Cursor中使用多Tab并行(默认开启)
|
||||
- Claude Code中使用Subagent能力(需手动注册)
|
||||
- 建议:前端Agent专注UI/交互,后端Agent专注API/数据
|
||||
|
||||
## 五、前后端联调:Mock 数据与分阶段验证
|
||||
|
||||
- 三阶段验证策略
|
||||
- Mock数据编写要点
|
||||
- 后端独立构建验证
|
||||
- 前后端联调步骤
|
||||
|
||||
## 六、警惕 SDD 陷阱:测试如何介入全栈研发
|
||||
|
||||
- SDD不等于需求文档
|
||||
- 关注隐性功能(异常处理、边界情况、性能要求)
|
||||
- 测试应尽早介入
|
||||
|
||||
## 七、综合效益与总结
|
||||
|
||||
核心公式:**Harness(约束) + SDD(规格) + 多仓(上下文) = 高质量AI全栈代码**
|
||||
51
3Resources/游戏开发/性能优化/TMP字体Atlas内存优化实战.md
Normal file
51
3Resources/游戏开发/性能优化/TMP字体Atlas内存优化实战.md
Normal file
@@ -0,0 +1,51 @@
|
||||
---
|
||||
title: TMP字体Atlas内存优化实战
|
||||
source: https://mp.weixin.qq.com/s/iPSxQvg-riGh66efHlSyLA
|
||||
author: 侑虎科技
|
||||
date: 2026-05-06
|
||||
tags: [Unity, TMP, 内存优化, Atlas, UWA]
|
||||
---
|
||||
|
||||
# 【厚积薄发】从64MB降至5MB,TMP字体Atlas内存优化实战
|
||||
|
||||
> 来源:UWA公众号 - 第474篇UWA技术知识分享
|
||||
|
||||
## 实战案例一:字体Atlas双实例冗余 + RW动态图集内存过高
|
||||
|
||||
**问题:** GOT Online报告显示,项目游戏字体Atlas出现双实例冗余且开启RW动态图集内存占用过高。
|
||||
|
||||
**原因:**
|
||||
- 字体Atlas实例数量为2,通常是因为该字体既在初始包中的初始场景中被引用,又在后续AssetBundle资源中重复引用
|
||||
- RW(Read/Write Enabled)开启导致CPU和GPU各存一份,内存翻倍
|
||||
|
||||
**解决方案:**
|
||||
1. 将初始场景中使用的字符单独创建对应的小字体,避免初始场景中有大图集和大字体的引用
|
||||
2. 预先收集游戏的大部分字符集,将Atlas设置为**静态图集配置**,可减少16MB占用
|
||||
3. 不在静态图集中的字符,通过TMP的**Fallback机制**,设定一个小分辨率(如512×512)的动态Atlas进行字符补充
|
||||
|
||||
## 实战案例二:TMPAsset内嵌Atlas纹理无法压缩
|
||||
|
||||
**问题:** TMPAsset内嵌Atlas纹理属于子资源,无法单独进行纹理压缩参数配置。
|
||||
|
||||
**解决方案(Editor脚本改造):**
|
||||
1. 通过Editor编辑器脚本对该纹理进行独立复制
|
||||
2. 将TMPAsset材质球关联替换为复制后的新纹理
|
||||
3. 移除原TMPAsset内的内嵌纹理
|
||||
4. 剥离后的独立纹理可自由配置压缩格式(ASTC6×6、ASTC8×8等),进一步降低内存开销
|
||||
5. 真机测试:压缩后文字美术表现无明显差异
|
||||
|
||||
## 优化前后对比
|
||||
|
||||
| 项目 | 内存 |
|
||||
|------|------|
|
||||
| 优化前 | **64MB** |
|
||||
| 优化后合计 | **4.75MB** |
|
||||
| 初始场景 512×512 静态图集 | 0.25MB |
|
||||
| 4096×4096 静态图集(ASTC8×8) | 4MB |
|
||||
| Fallback兜底纹理 512×512(Alpha8) | 0.5MB |
|
||||
|
||||
## 相关资源
|
||||
- UWA社区:community.uwa4d.com
|
||||
- UWA官网:www.uwa4d.com
|
||||
- UWA学堂:edu.uwa4d.com
|
||||
- QQ群:793972859
|
||||
Reference in New Issue
Block a user